Linux常用命令整理

系统信息

date 显示系统日期

cal -y 显示年的日历表

开关机 

shutdown -h now 关闭系统

init 0 关闭系统

shutdown -r now 重启

reboot 重启

shutdown -c 取消按预定时间关闭系统

logout 注销

文件和目录

cd .. 返回上一级目录

cd ../.. 返回上两级目录

cd 进入个人的主目录

cd - 返回上次所在的目录

pwd 显示工作路径

ls 查看目录中的文件

ls -l 显示文件和目录的详细资料

ls -a 显示隐藏文件

tree 显示文件和目录由根目录开始的树形结构

mkdir dir1 创建一个叫做 'dir1' 的目录'

mkdir -p /tmp/dir1/dir2 创建一个目录树

rmdir dir1 删除一个叫做 'dir1' 的目录'

touch abc 新建一个文件

rm -f file1 删除一个叫文件

rm -rf dir1 删除一个叫做 'dir1' 的目录并同时删除其文件

mv dir1 new_dir 重命名/移动 一个目录

cp file1 file2 复制一个文件

cp -a dir1 dir2 复制一个目录

ln -s file1 lnk1 创建软链接

ln file1 lnk1 创建物理链接,即同一个文件的另一个文件名,都指向同一个文件

文件搜索

find / -name file1 从 '/' 开始进入根文件系统搜索文件和目录

find / -user user1 搜索属于用户 'user1' 的文件和目录

locate \*.ps 寻找以 '.ps' 结尾的文件 - 先运行 'updatedb' 命令

whereis ls 显示命令、及其源码或man的位置

which ls 显示当前使用的命令的位置

挂载一个文件系统

mount /dev/hda2 /mnt/hda2 挂载

umount /dev/hda2 卸载

fuser -km /mnt/hda2 当设备繁忙时强制卸载

umount -n /mnt/hda2 运行卸载操作而不写入 /etc/mtab 文件- 当文件为只读或当磁盘写满时非常有用

mount -o loop file.iso /mnt/cdrom 挂载一个文件或ISO镜像文件

mount -t vfat /dev/hda5 /mnt/hda5 挂载一个Windows FAT32文件系统

mount /dev/sda1 /mnt/usbdisk 挂载一个usb 捷盘或闪存设备

mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share 挂载一个windows网络共享

磁盘空间 

df -h 显示已经挂载的分区列表

du -sh dir1 估算目录 'dir1' 已经使用的磁盘空间'

用户和群组 

groupadd group_name 创建一个新用户组

groupdel group_name 删除一个用户组

groupmod -n new_group_name old_group_name 重命名一个用户组

useradd user1 创建一个新用户

userdel -r user1 删除一个用户 ( '-r' 排除主目录)

passwd 修改口令

passwd user1 修改一个用户的口令 (只允许root执行)

文件的权限 - 使用 "+" 设置权限,使用 "-" 用于取消 

chmod go-rwx directory1 删除群组(g)与其他人(o)对目录的读写执行权限

chmod 777 abc 用数字方式改变

chown user1 file1 改变一个文件的所有人属性

chown -R user1 directory1 改变一个目录的所有人属性并同时改变改目录下所有文件的属性

chgrp group1 file1 改变文件的群组

文件的特殊属性 - 使用 "+" 设置权限,使用 "-" 用于取消 

lsattr 显示特殊的属性

chattr +a file1 只允许以追加方式读写文件

chattr +c file1 允许这个文件能被内核自动压缩/解压

chattr +d file1 在进行文件系统备份时,dump程序将忽略这个文件

chattr +i file1 设置成不可变的文件,不能被删除、修改、重命名或者链接

chattr +s file1 允许一个文件被安全地删除

chattr +S file1 一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘

chattr +u file1 若文件被删除,系统会允许你在以后恢复这个被删除的文件

打包和压缩文件 

tar -cvf archive.tar file1 创建一个非压缩的 tarball

tar -cvf archive.tar file1 file2 dir1 创建一个包含了 'file1', 'file2' 以及 'dir1'的档案文件

tar -xvf archive.tar 释放一个包

tar -xvf archive.tar -C /tmp 将压缩包释放到 /tmp目录下

tar -jcvf archive.tar.bz2 dir1 创建一个bzip2格式的压缩包

tar -jxvf archive.tar.bz2 解压一个bzip2格式的压缩包

tar -zcvf archive.tar.gz dir1 创建一个gzip格式的压缩包

tar -zxvf archive.tar.gz 解压一个gzip格式的压缩包

bunzip2 file1.bz2 解压一个叫做 'file1.bz2'的文件

bzip2 file1 压缩一个叫做 'file1' 的文件

gunzip file1.gz 解压一个叫做 'file1.gz'的文件

gzip file1 压缩一个叫做 'file1'的文件

rar a file1.rar test_file 创建一个叫做 'file1.rar' 的包

rar x file1.rar 解压rar包

unrar x file1.rar 解压rar包

zip file1.zip file1 创建一个zip格式的压缩包

zip -r file1.zip file1 file2 dir1 将几个文件和目录同时压缩成一个zip格式的压缩包

unzip file1.zip 解压一个zip格式压缩包

RPM 包 - (Fedora, Redhat及类似系统)

rpm -ivh package.rpm 安装一个rpm包

rpm -e package_name.rpm 删除一个rpm包

rpm -qa 显示系统中所有已经安装的rpm包

YUM 软件包升级器 - (Fedora, RedHat及类似系统) 

yum install package_name 下载并安装一个rpm包

yum update package_name 更新一个rpm包

yum remove package_name 删除一个rpm包

yum list 列出当前系统中安装的所有包

yum search package_name 在rpm仓库中搜寻软件包

yum clean packages 清理rpm缓存删除下载的包

yum clean headers 删除所有头文件

yum clean all 删除所有缓存的包和头文件

DEB 包 (Debian, Ubuntu 以及类似系统) 

dpkg -i package.deb 安装/更新一个 deb 包

dpkg -r package_name 从系统删除一个 deb 包

dpkg -l 显示系统中所有已经安装的 deb 包

APT 软件工具 (Debian, Ubuntu 以及类似系统) 

apt-get install package_name 安装/更新一个 deb 包

apt-get update 升级列表中的软件包

apt-get upgrade 升级所有已安装的软件

apt-get remove package_name 从系统删除一个deb包

apt-get check 确认依赖的软件仓库正确

apt-get clean 从下载的软件包中清理缓存

apt-cache search searched-package 返回包含所要搜索字符串的软件包名称

查看文件内容

cat file1 从第一个字节开始正向查看文件的内容

tac file1 从最后一行开始反向查看一个文件的内容

more file1 查看一个长文件的内容

less file1 类似于 'more' 命令,但是它允许在文件中和正向操作一样的反向操作

head -2 file1 查看一个文件的前两行

tail -2 file1 查看一个文件的最后两行

tail -f /var/log/messages 实时查看被添加到一个文件中的内容

文本处理 

cat -n file1 标示文件的行数

cat file1 | command( sed, grep, awk, grep, etc...) > result.txt 打开文件,使用命令处理,把结果写入到文件中

cat file1 | command( sed, grep, awk, grep, etc...) >> result.txt 打开文件,使用命令处理,把结果追加到文件中

字符设置和文件格式转换 

dos2unix filedos.txt fileunix.txt 将一个文本文件的格式从MSDOS转换成UNIX

unix2dos fileunix.txt filedos.txt 将一个文本文件的格式从UNIX转换成MSDOS

recode ..HTML < page.txt > page.html 将一个文本文件转换成html

recode -l | more 显示所有允许的转换格式

文件系统分析 

badblocks -v /dev/hda1 检查磁盘hda1上的坏磁块

fsck /dev/hda1 修复/检查hda1磁盘上linux文件系统的完整性

fsck.ext2 /dev/hda1 修复/检查hda1磁盘上ext2文件系统的完整性

初始化一个文件系统

mkfs /dev/hda1 在hda1分区创建一个文件系统

mke2fs /dev/hda1 在hda1分区创建一个linux ext2的文件系统

mkfs -t vfat 32 -F /dev/hda1 创建一个 FAT32 文件系统

SWAP文件系统

mkswap /dev/hda3 创建一个swap文件系统

swapon /dev/hda3 启用一个新的swap文件系统

swapon /dev/hda2 /dev/hdb3 启用两个swap分区

备份

dd if=/dev/sda of=/tmp/file1 备份磁盘内容到一个文件

dd if=/dev/fd0 of=/dev/hda bs=512 count=1 从已经保存到软盘的备份中恢复MBR内容

光盘 

mkisofs /dev/cdrom > cd.iso 在磁盘上创建一个光盘的iso镜像文件

mount -o loop cd.iso /mnt/iso 挂载一个ISO镜像文件

网络 - (以太网和WIFI无线

ifconfig eth0 显示一个以太网卡的配置

ifup eth0 启用一个 'eth0' 网络设备

ifdown eth0 禁用一个 'eth0' 网络设备

ifconfig eth0 192.168.1.1 netmask 255.255.255.0 控制IP地址

ifconfig eth0 promisc 设置 'eth0' 成混杂模式以嗅探数据包 (sniffing)

dhclient eth0 以dhcp模式启用 'eth0'

route -n

route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1

route del 0/0 gw IP_gateway

nslookup www.example.com

netstat -tup show all active network connections and their PID

netstat -tupl show all network services listening on the system and their PID

tcpdump tcp port 80 show all HTTP traffic

iwlist scan show wireless networks

iwconfig eth1 show configuration of a wireless network card

你可能感兴趣的:(Linux常用命令整理)