前言
Linux继承了unix操作系统结构清晰的特点。在linux下的文件结构非常有条理。但是,上述的优点只有在对linux相当熟悉时,才能体会到。
本文摘自《Linux/UNIX指令范例速查手册》。
raidstart: RAID start,启动软件的硬盘阵列
raidstop: RAID stop,关闭软件的硬盘阵列
rc-status: runlevel command status,显示服务器的启动状态
rc-status
,列出当前运行等级下的服务状态。
rc-status boot
,列出运行等级为boot下的服务状态。
rc-update: runlevel command update,显示与控制服务器的启动状态
rcp: remote copy,远程复制文件或目录
reboot: reboot,重新启动系统
reboot
,重新启动系统。
renice: renice,调整正在运行进程的优先级
renice -1 1772
,将进程号码为1772的进程优先级改为-1。
repquota: report of quota,检查硬盘容量限制
resize2fs: resize file system,调整文件系统的大小
1 | df -h |
将文件系统/dev/sda2的大小调整为100MB。
restore: restore,回存dump所产生的数据
restore -r -f dump.txt
,将文件dump.txt还原到dump所备份的位置。
rlogin: remote login,远程登录主机
rlogin 10.1.1.3
,默认以当前root用户登录10.1.1.3主机。
rlogin 10.1.1.3 -l mark
,使用mark身份登录10.1.1.3主机。
rm: remove,删除文件或目录
rm -i *.c
,删除所有.c文件,删除前逐一询问确认。
rm -rf finished
,将 finished 目录及子目录中所有文件删除,不再确认。
rmdir: remove directory,删除目录
rmdir AAA
,将当前目录下名为 AAA 的目录删除。
rmdir -p BBB/Test
,在当前目录下的 BBB 目录中,删除名为 Test 的子目录。若 Test 删除后,BBB 目录成为空目录,则 BBB 也删除。
rmmod: remove modules,删除加载的模块
route: route,显示或设置路由
route add -net 192.168.0.0 netmask 255.255.255.0 dev eth0
,通过设备eth0在网段192.168.0.0中增加一个路由。
1 | route del default gw 10.1.1.1 |
将原网关地址10.1.1.1改为10.1.1.2。
rpm: Red Had package management,管理RPM软件包
rpm -ivh postfix-2.5.6-i386.rpm
,使用rpm命令安装postfix。
rpm -qi wget
,显示wget详细的安装信息。
rpm -e sendmail
,移除sendmail。
rsh: remote shell,远程登录的shell
rsh matt@10.1.1.5 /bin/ls
,使用matt账号登录10.1.1.5并运行/bin/ls。
runlevel: run level,显示目前的运行等级
scp: secure copy,使用加密连接复制文件
scp testfile john@10.1.1.2:/home/john/
,将本机的testfile文件以john的身份复制到10.1.1.2(默认端口为22)上。
screen: screen,多重窗口管理进程
screen
,使用screen命令在同一个终端机下打开两个窗口,并运行不同的进程。
sed: stream editor,文件内容修改
sed '2,4d' testfile
,将testfile的第2~4行删除。
sed 's/is/error/' testfile
,将testfile中的每行第一个is字符串换成error。
sed 's/is/error/g' testfile
,将testfile中的所有is字符串换成error。
service: service,打开或关闭服务
service --status-all
,显示服务器目前的状态。
service postfix start
,启动postfix服务器。
sestatus: SELinux status,显示SELinux的状态
sestatus
,显示SELinux的当前状态。
sestatus -b
,显示SELinux中布尔值的状态。
set: set,查看和设置环境变量
set
,查看系统默认的环境变量。
set SHELL "/bin/csh"
,将变量名称SHELL设为/bin/csh。
setenforce: set enforce,启用或取消SELinux的限制
setenforce 0
,取消SELinux的所有限制。
setenforce 1
,打开SELinux的限制。
setsebool: set SELinux boolean,设置SELinux的布尔值
setsebool samba_enable_home_dirs 1
,允许samba共享账号的家目录。
setsebool ftp_home_dir 1
,允许账号ftp进入自己的家目录。
showmount: show mount,显示NFS文件挂载的状态
showmount -e 172.20.11.1
,显示172.20.11.1这台NFS服务器所共享的目录。
shutdown: shut down,关闭系统
shutdown -h now
,立即关机。
shutdown -h 0
,立即关机。
shutdown 5 "system will be off in 5 mins"
,5分钟后关机,并在每个终端机窗口提示。
sleep: sleep,暂停计时
date;sleep 10s;date
,显示目前时间后延迟10秒,之后再次显示时间。
sln: static link,新建文件间的软连接
sln /etc/hosts newhost
,建立一个静态的连接。
slogin: SSH login,远程加密的连接
slocate: security enhanced locate,寻找文件或目录
smbpasswd: samba password,改变samba账号的密码
smbpasswd -a devin
,在samba服务器上新建一个devin账号。
smbpasswd -d devin
,暂停账号devin对samba服务器的使用权限。
smbstatus: samba status,显示samba服务器的状态
sort: sort,将文本文件的内容重新排序
sort -t: /etc/passwd
,将passwd中的内容按照账户的字母顺序排序。
ps -ef | sort
,对于进程依照运行的账户排序。
split: split,分割文件
split -b 1000 vsftpd.conf
,将vsftpd.conf分割为小文件,每个文件最大为1000Byte。
split -l 30 -d vsftpd.conf
,将vsftpd.conf分割为小文件,每个小文件的行数最多为30行,且小文件的文件名以数字来区别。
ssh: secure shell,远程加密的连接
ssh 10.1.1.2
,通过ssh连接到主机10.1.1.2。
ssh 172.20.11.1 -p 12345 -l macro
,连接到172.20.11.1,使用端口12345,并使用marco账户。
stat: status,显示文件或文件系统的状态
stat vsftpd.conf
,显示文件vsftpd.conf的状态。
stat -f /dev/sda1
,显示文件系统/dev/sda1的状态。
su: substitute user,切换用户
su
,默认切换root账号。
su voidking
,切换为voidking账号。
sudo: substitute user to do something,使用指定的账号权限运行进程
sudo -u www vi /etc/httpd/conf/httpd.conf
,使用身份www编辑/etc/httpd/conf/httpd.conf。
sum: sum,计算并显示文件的标识符
sum squid.conf
,显示文件的标识符。
suspend: suspend,暂停当前所使用的shell
suspend -f
,停止目前的shell。
swapoff: swap off,关闭交换区空间
swapoff /dev/sda2
,关闭定义在/dev/sda2上的交换区空间。
swapoff -a
,关闭所有定义在/dev/fstab上的交换区空间。
swapon: swap on,挂载交换区空间
swapon /dev/sda2
,挂载/dev/sda2上的交换区空间。
swapon -a
,挂载所有定义在/dev/fstab上的交换区空间。
sync: synchronize,将内存中的数据存回硬盘
sync
,将内存中的数据写回硬盘。
sysctl: system control,设置内核参数
sysctl -a
,列出正在使用的内核参数。
sysctl -w net.ipv4.ip_forward=1
,将net.ipv4.ip_forward设为1。
tac: 颠倒的cat,从文件内容从尾到头显示
tac file.txt
,将文件从尾到头以反序显示。
tail: tail,显示文件后面的部分
tail -n 10 file.txt
,显示文件最后10行。
tail -f /var/log/maillog
,持续监控文件/var/log/maillog,只要文件有新内容,就在屏幕输出。
tar: tape archive,打包文件
tar -cvf mail.tar /var/spool/mail
,将账号的邮件文件打包为mail.tar。
tar -xvf mail.tar
,将一个打包文件解压缩到当前目录之下。
tar -xvf mail.tar -C ./tmp/
,将打包文件解压缩到/tmp下。
tar -zcvf conf.tar.gz /etc/*.conf
,使用tar打包文件,并只用gzip压缩该文件。
tar -zxvf conf.tar.gz -C ./tmp/
,将打包文件解压缩到/tmp下。
tar -jcvf conf.tar.bz2 /etc/*.conf
,使用tar打包文件,并使用bzip2压缩该文件。
tar -jxvf conf.tar.bz2 -C ./tmp/
,将打包文件解压缩到/tmp下。
tcpdump: TCP dump,显示网络上TCP的状态
tcpdump -i eth0
,显示网络设备eth0上的数据包状态。
tee: tee,读取文件并输出
tee -a file
,接着输入附加内容,ctrl+C跳出。
telinit: tell init,切换系统目前的运行等级
1 | runlevel |
将目前的运行等级改为3。
telnet: tel net,远程连接程序
telnet 172.20.11.1
,连接到172.20.11.1上的telnet服务。
telnet localhost 25
,连接到本机的25端口(邮件服务器使用的端口)。
tftp: trivial FTP,文件传输
1 | # tftp localhost |
连接到本机tftp服务器。
time: time,统计时间消耗
time ps -aux
,获得执行ps -aux
的结果和所花费的系统资源。
top: top,查看目前的进程状态
top
,显示所有的进程与统计信息。
top -u smmsp
,显示账号smmsp所运行的进程与统计信息。
touch: touch,更改文件的时间标记
touch file
,新建一个名为file的文件。
touch vsftpd.conf
,更改已存在文件的时间标记。
1 | touch -d "6:03pm" file |
将 file 的时间记录改成 5 月 6 日 18 点 3 分,公元两千年。
时间可以使用 am,pm 或是 24 小时的格式,日期可以使用其他格式如 6 May 2000。
tr: translation,转换或更改文件中的字符
cat testfile | tr line abcd
,将line字符串换成abcd(l
换成a,i换成b,n换成c,e换成d)。
echo "this is a test" | tr a-z A-Z > test.txt
,转换“this is a test”为大写,并且存入test.txt文件。
cat test.txt | tr -d this
,去掉字符串中的t、h、i、s四个字符。
tr -s "this" "TEST"
,字符串中的t换成T、h换成E,i换成S,s换成T。
tracepath: trace path,追踪网络连接的路径
tracepath 210.75.20.211
,追踪连接到210.75.20.211的路径。
traceroute: traceroute,追踪连接所经过的路由器
traceroute 210.75.20.211
,显示连接到210.75.20.211所经过的路由器。
tune2fs: tune ext2 file system,调整文件系统的参数
tune2fs -l /dev/sda1
,列出/dev/sda1的相关信息。
tune2fs -j /dev/sda1
,将文件系统由ext2调整为ext3。
ulimit: user limit,控制系统资源
ulimit -a
,显示当前的系统资源使用限制。
ulimit -l 102400
,设置所有用户所能使用的内存为102400KB。
umask: user file creation mode mask,设置新建文件的屏蔽权限
umask
,显示默认的文件权限。
umask -S
,用较易阅读的方式显示文件权限。
umount: un-mount,卸载文件系统
umount /cdrom
,卸载已挂载的的目录/cdrom。
umount -a
,卸载所有定义在/etc/mtab中的文件系统。
unalias: un-alias,删除别名设置
unalias ll
,将已定义的别名ll删除。
uname: UNIX name,显示系统信息
uname -a
,显示所有信息。
uname -i
,显示硬件平台。
uncompress: un-compress,解压缩Z格式的压缩文件
uncompress -v test.Z
,解压缩test.Z文件并且显示详细信息。
uniq: unique,删除文件中重复的行
uniq testfile
,将文件唯一化(重复的行显示一行)。
uniq -d testfile
,显示文件中重复出现的行。
unset: un-set,删除变量设置
unset color
,将变量color的设置删除。
unzip: un-zip,解压缩zip文件
unzip -l file.zip
,显示压缩文件file.zip中的文件列表。
unzip file.zip
,解压缩file.zip。
uptime: up time,显示系统已经运行的时间
uptime
,显示系统已运行的时间。
useradd: user add,新建账号
useradd -m max
,新增一个用户max。
useradd -u 1001 -d /opt/jerry -m jerry
,新增一个用户jerry,并指定该用户UID为1001,且家目录为/opt/jerry。
userdel: user del,删除账号
userdel peter
,删除用户peter。不加任何参数,仅删除该用户,不会删除该用户的家目录。
usermod: user mode,修改账号设置
usermod -d /data/john john
,将用户john的登录目录改为/data/john。
usermod -e 01/31/2018 alex
,将用户alex的有效期限设为2018年1月31日。
usermod -l alex peter
,将账号peter改为alex。
usermod -g users alex
,将用户alex的群组改为users。
users: user status,显示登录账号
users
,显示登录的用户名称。
vi: view,文本编辑
vi install.log
,编辑文件install.log。
view: view,文本编辑
view是一个连接到vi的连接文件,与vi完全相同。
vim: vi improved,文本编辑
vim是vi的升级版,用法参考vi。
vlock: virtual lock,锁定虚拟控制台的使用权
vlock
,将目前的窗口锁定。
vmstat: virtual memory status,显示虚拟内存的状态
vmstat
,显示虚拟内存目前的使用状况。
vmstat -d
,显示磁盘的使用状况。
vmstat -s
,显示多样的数据与统计信息。
w: who,显示目前登录的账号信息
w
,显示所有用户的数据。
wait: wait,等待程序传回信息
wait 3305
,等待进程为3305的程序传回值。
wall: wall,广播信息
wall hi
,传讯息”hi”给每一个用户。
watch: watch,全屏输出命令的运行结果
watch -n 5 tail /var/log/messages
,每个5s运行一次tail /var/log/messages。
wc: word count,计算文件的字节数、字数或行数
wc -c install.log
,显示install.log的字符数。
wc -l install.log
,显示install.log的行数。
wget: WWW get,从指定的网站下载文件
wget http://apache.mirror.com/httpd/httpd-2.2.8.tar.gz
,下载httpd-2.2.8.tar.gz。
wget -t 5 http://apache.mirror.com/httpd/httpd-2.2.8.tar.gz
,下载httpd-2.2.8.tar.gz,最多尝试5次。
whatis: what is,查找在线帮助的位置
whatis kill
,寻找命令kill的在线帮助所在的位置。
whereis: where is,查找相关的文件
whereis kill
,查找命令kill的相关文件。
whereis hosts.allow
,查找host.allow的相关文件。
which: which,查找指定的文件
which cat
,寻找文件cat。
who: who,显示目前登录的账号信息
who
,显示当前登录系统的账户。
who -q
,显示当前登录的用户名称及总人数。
who -r
,显示当前的运行等级。
whoami: who am i,显示账号名称
whoami
,显示自己的用户名称。
write: write,发送信息给其他账号
write Rollaend
,传讯息给Rollaend,此时 Rollaend 只有一个连线。接下来就是将讯息打上去,结束按 ctrl+c。
write Rollaend pts/2
,传讯息给 Rollaend,Rollaend 的连线有 pts/2,pts/3。
注意:若对方设定 mesg n,则此时讯息将无法传给对方。
xauth: X-authentication,编辑X服务器的授权信息
xauth
,进入命令行互动模式。
xhost: X-host,管理存取X服务器的权限
xhost
,显示目前的xhost状态。
xhost +192.168.0.1
,允许地址192.168.0.1对本机的X服务器有访问权限。
xset: X-set,设置X-window的参数
xset s on
,打开屏幕保护功能。
xset q
,显示目前状态。
yes: yes,响应相同的字符串
yes hello
,利用yes命令重复响应字符串hello。
yum: yellowdog updater modified,RPM软件包的高级管理
yum check-update
,列出所有可升级的软件包。
yum install lynx
,安装lynx软件包。
yum update webalizer
,升级webalizer软件包。
1 | # yum shell |
使用shell升级vino软件包。
zcat: zip concatenate,列出压缩文件中的文件内容
zcat file.zip
,查看压缩文件中的内容,只能列出压缩文件内的第一个文件的内容。
zgrep: gz grep,查找gz或Z文件中特定的字符串
zgrep line3 file.Z
,用zgrep命令查找压缩文件中包含line3的字符串。
zgrep line3 file.gz
,用zgrep命令查找压缩文件中包含line3的字符串。
zip: zip,将文件压缩为zip格式
zip file.Z file*
,将文件名file开头的文件压缩为file.Z。
zip -d file.Z file1.zip
,承接上例,移除压缩文件file.Z中的file1.zip。
zipgrep: zip grep,查找zip文件中特定的字符串
zipgrep Th file1.zip
,寻找压缩文件file1.zip中包含字符串Th的文件,并列出该行。
zipinfo: zip information,显示zip压缩文件的信息
zipinfo file.Z
,显示文件file.Z的压缩内容。
zless: zip less,显示gz或Z文件的内容
zless file.gz
,查看压缩文件的内容。
znew: Z new compression,将Z文件重新压缩为gz文件
znew file.Z
,将文件file.Z转换为file.gz。若Z文件中包含多个文件,将无法使用这个命令。
本文摘自《Linux/UNIX指令范例速查手册》。
last: last login,显示曾登录的账号
last
,显示曾登录的账号。
last -x
,显示系统关机参数与运行等级。
lastb: last bad login,显示登录失败的账号
lastb
,显示登录失败的账号。
lastb -i
,显示IP地址,而不显示主机名称。
ldd: library dependencies,列出与文件有关的函数库
ldd /bin/netstat
,显示/bin/netstat所使用的共享函数库。
ldd /bin/cat
,显示/bin/cat所使用的共享函数库。
less: less,显示文件内容
less ezhttp.log
,分页查看ezhttp.log文件。
使用pgup和pgdn上下翻页,使用q退出。
ps -ef | less
,ps查看进程信息并通过less分页显示。
lilo: LInux LOader,开机启动程序
lilo -v -v -v
,设置完/etc/lilo.conf开机配置后,使之开机时生效,指定显示第三级模式。
ln: link,新建文件之间的连接
ln -s yy zz
,将文件yy产生一个符号链接zz。
ln yy xx
,将文件yy产生一个硬链接zz。
lindir: link directory,新建目录之间的连接
lndir /etc/vsftpd/
,新建目录的连接。
lnstat: linux network statistics,列出网络数据统计信息。
lnstat -d
,列出支持的统计文件。
locate: locate,在系统中查找包含特定字符串的文件
locate mysql.sock
,在整个系统中查找mysql.sock的文件。
locate -n 100 a.out
,在整个系统中查找a.out文件,但最多只显示100个。
locate -u
,建立资料库。
系统如果找不到locate命令,需要先安装locate,yum install mlocate
,然后更新locate的数据库,updatedb
。
logname: login name,列出登录的账号
logname
,显示最开始登录系统的账号。
logrotate: log rotate,定期或定量将日志文件压缩备份
logrotate /etc/logrotate.conf
,执行logrotate命令并采用/etc/logrotate.conf中的设置。
logsave: log save,将制定程序的输出存为日志文件
logsave ps.txt ps
,将ps的输出记录到文件ps.txt中。
lp: line printer,打印文件
lp file1
,将file1通过默认的打印机输入。
lpq: line printer queue,列出正在等待打印机的队列
lpq
,列出目前打印机的队列状态。
lprm: line printer remove,删除正在打印的任务
lprm -
,取消所有的打印任务。
ls: list,列出目录或文件名
ls -ltr s*
,列出当前工作目录下所有名称是s开头的文件,新的排后面。
ls -lR /home
,将 /home 目录以下所有目录及文件详细资料列出。
ls -AF
,列出目前工作目录下所有文件及目录。目录名称后会加 “/“,可执行文件名称后会加”*”,链接文件后会加”@”。
lsattr: list attribute,列出ext2或ext3系统中文件的属性
lsattr
,列出当前文件的类别。
lsmod: list module,列出内核模块的使用状态
lsmod
,列出(部分)内核模块在RedHat与Fedora上的使用状态。
lsusb: list usb,列出所有USB设备。
lsusb
,列出目前的USB设备。
lynx: 由大学实验室中命名而来,文字界面上显示网页内容
lynx www.google.com
,通过lynx命令在终端机上浏览网页。
mail: mail,收发邮件
mail -s "test mail" voidking@qq.com
,信件主题为“test mail”,然后输入右键内容。信件结束时,输入一个点并按enter键。然后输入发件人的email地址,没有就按enter键。
如果没有mail命令,需要先安装mailx,yum install mailx
。
mailstats: mail status,显示目前的邮件状态
mailstats
,列出目前的邮件统计表。
mailq: mail queque,列出队列中的邮件
mailq
,列出所有在队列中尚未寄出邮件。
make: make gcc program,维护或编译程序组
make -C /etc/mail
,在RedHad下编译sendmail的配置文件。
1 | cd /usr/src/linux |
运行编译内核的编译顺序。
makemap: make map files,产生sendmail的数据库文件
makemap -l
,列出支持的转换文件类型。
makemap hash /etc/mail/access.db < /etc/mail/access
,通过/etc/mail/access产生/etc/mail/access.db转换文件。
man: manual,显示在线帮助信息
man kill
,显示kill命令说明。
man -K kill
,显示所有与kill有关的说明。
manpath: manual path,显示在线帮助的搜索路径
manpath
,显示在线帮助的搜索路径。
md5sum: MD5 check sum,计算并显示MD5 sum。
md5sum file1
,检验文件file1的MD5 sum。
cat checktxt
,md5sum -c check.txt
,检验check.txt中所记载的MD5 sum是否正确。
mesg: message,控制终端机的写入权限
mesg
,查看其他人对当前终端机的写入权限。
mesg n
,关闭其他人对当前终端机的写入权限。
mkbootdisk: make boot disk,制作启动盘
mkbootdisk --device /dev/fd0 --verbose 2.6.33
,使用2.6.33的内核制作启动盘。
mkdir: make directory,新建目录
mkdir temp
,在当前目录下新建temp子目录。
mkdir -p /opt/www/test
,新建所有不存在的目录和上层目录。
mke2fs: make ext2/ext3 file system,格式化为ext2、ext3或ext4的文件系统
mke2fs /dev/sda3
,将分区格式化为ext2的文件系统。
mke2fs -j /dev/sda3
,将分区格式化为ext3的文件系统。
mke2fs -t ext4 /dev/sda3
,将分区格式化为ext4的文件系统。
mkfs: make file system,格式化文件系统
mkfs /dev/sda1
,将分区/dev/sda1格式化为默认的ext2文件系统。
mkfs.xfs: make XFS file system,格式化为xfs的文件系统
mkfs.xfs /dev/sdc3
,将分区格式化为xfs的文件系统。
mkinitrd: make initial ramdisk images,建立ramdisk的镜像文件
uname -a
,创建一个镜像文件。
mkinitrd /boot/initrd-new.img 2.6.33-85.fc13.i686.PAE
,创建一个镜像文件。
mkreiserfs: make reiser file system,格式化为reiserfs的文件系统
mkreiserfs /dev/sda1
,将分区/dev/sda1格式化为reiserfs的文件系统。
mkswap: make swap,新建swap空间
mkswap /dev/sda2
,新建一个swap空间。
modinfo: module information,显示内核模块的信息
modinfo mii
,显示mii模块的信息。
modinfo -a snd
,只显示snd模块的作者信息。
modeprobe: module probe,从内核中新建或删除模块
modprobe -l ext*
,显示名称以ext开头的模块名称。
modprobe --show-depends ext2
,显示与ext2有关的模块名称。
more: more,显示文件内容
more -s testfile
,逐页显示 testfile 的文件内容,如有连续两行以上空白行则以一行空白行显示。
more +20 testfile
,从第 20 行开始显示 testfile 之文件内容。
mount: mount,挂载文件系统
mount
,显示当前的分区状态。
mount -t xfs /dev/sda2 /opt
,将分区/dev/sda2挂载到/opt上,并指定文件系统为xfs。
mount -t ext3 server1://data /opt
,挂载NFS服务器所共享的文件系统。
mount -t smbfs -o username=tom,password=123 //10.1.1.1/TL /tmp
,挂载windows系统的网上邻居中所共享的文件系统。
mtools: MSDOS tools,显示mtools所支持的命令
mtools
,显示所有支持MSDOS文件系统的命令。
mutt: mail user agent,文字界面的邮件工具
mutt -s "A test mail" josfeng@gmail.com
,将邮件寄给 josfeng@gmail.com,信件主题为A test mail。
mv: move,移动或重命名文件或目录
mv aaa bbb
,将文件 aaa 更名为 bbb。
mv *.c finished
,将所有的.c文件移动到 finished 目录中。
nano: Nano’s another editor,文本编辑
ncftp: new command line FTP,传送与接收文件
1 | # ncftp -u max -p abc123 172.20.11.1 |
使用ncftp命令下载一个readme文件。
netstat: net status,查询网络目前的状态
netstat -nt
,显示目前TCP的连接状态。
netstat -apt
,显示目前TCP应用进程所使用的端口号。
nice: nice,更改优先级
1 | nice |
调整shell的优先级。
nohup: no hup,后台运行指定的程序
nohup script1 &
,在后台运行script1,且在脱机后仍可继续运行。
nslookup: name server lookup,域名与IP地址的对应
1 | # nslookup |
1 | # nslookup |
查询qq.com邮件服务器的地址。
od: octal dump,以八进制编码输出文件内容
od file
,以八进制编码输出文件内容。
od -t c file
,以ASCCII码显示文件file的内容。
passwd: password,修改密码
passwd
,一般账号修改密码。
passwd mark
,修改账号mark的密码。
passwd -l peter
,将peter账号停用。
passwd -u peter
,将peter账号启用。
paste: paste,合并文件的内容
paste file1 file2
,将两个文件按列合并。
patch: patch,补丁更新
patch file file.patch
,以补丁文件file.patch修补文件file。
patch b file file.patch
,以补丁文件file.patch修补文件file,并备份原文件。
pg: pagewise,显示文件内容
pg aaa
,使用pg显示aaa这个文件。
pgrep: process grep,根据PID显示进程
pgrep gdm
,列出与字符串gdm有关的PID。
pico: pine composer,文本编辑
pidof: process ID of something,查找进程的PID
pidof nfs
,显示进程nfs所用的PID。
pine: 作者命名,文字界面的邮件工具
新版Linux中,pine已被alpine所取代。
ping: 乒乓碰撞声,用特定的数据包测试主机是否在线
ping -c 5 www.sina.com.cn
,发送5次ICMP echo数据包,并显示统计结果。
ping -s 120 192.168.1.1
,使用大小为120Byte的数据包进行测试。
ping -r www.sina.com.cn
,不通过网关,直接传送数据包。
pkill: process kill,传送信号给指定的进程
pkill -9 sendmail
,将正在运行且含有sendmail的进程终止。
pmap: process map,显示进程的内存对应
pmap 2245
,显示进程2245的运行状态。
postalias: postfix aliases,产生postfix的aliases数据库文件
postmap: postfix map,产生postfix的access数据库文件
postqueue: postfix queue,postfix队列区的控制命令
mailq
,显示在mailq队列中的邮件。
postqueue -f
,强制传送队列中的邮件。
postsuper: postfix super,postfix邮件队列的高级管理
mailq
,postsuper -d B175
,删除邮件B175。
postsuper -d ALL
,删除所有在队列中的E-mail。
pr: print,打印前的重新排版
ps: process,显示目前的进程
ps
,显示当前账号所运行的进程。
ps -ef
,完成地列出所有账号的进程。
ps aux
,列出所有账号的进程,以及该进程所有的CUP和内存比例。
pstree: process tree,以树状表示目前的进程
pstree
,以树状表示目前的进程运行状况。
pwck: passwod check,检查密码文件的正确性
pwconv: password convert,转换为投影密码
pwd: print the working directory,显示当前所在的目录
pwd
,显示当前所在的目录。
pwunconv: password convert,还原投影密码
quota: quota,显示并限制账号的硬盘用量
quota
,显示自己的硬盘用量。
quota mark
,显示账号mark的硬盘用量。
quotacheck: quota check,检查账号硬盘空间的限制
quotaoff: quota off,关闭账号硬盘空间的限制
quotaon: quota on,开启账号硬盘空间的限制
quotastats: quota status,显示账号硬盘空间限制的统计数据
本文摘自《Linux/UNIX指令范例速查手册》。
e2fsck: ext2 file system check,检查ext2和ext3文件系统
e2fsck /dev/sda1
,检查/dev/sda1的状态是否正常。如果发现异常,则会询问是否修复。
e2label: ext2 label,设置ext2和ext3文件系统卷标
e2label /dev/sda1 Boot
,将文件系统/dev/sda1的卷标设置为Boot。
e2label /dev/sda1
,显示文件系统/dev/sda1的卷标。
echo: echo,显示文字
echo "This is a test"
,将字符串This is a test显示到屏幕上。
echo "Test: \t example1\nTest: \t example2"
,将字符串进行格式化的编排。
w
,echo "This is a test" > /dev/pts/1
,将字符串This is a test显示到其他终端机/dev/pts/1上。
ed: editor,文本编辑
ed file
,编辑文件file。
ed不常用,一般使用vi。
edquota: edit quota,编辑账号或组所能使用的硬盘容量。
edquota karen
,修改账号karen的quota用量。
edquota -p karen john
,将karen的设置套用在john上。
egrep: grep -e,查找文件中的特定字符串
egrep 127.0 /etc/*
,列出/etc下包含127.0字符串的所有文件。
eject: eject,光驱的弹出与收回
eject
,弹出光驱。
eject -j
,收回光驱。
eject /dev/cdrom1
,弹出指定光驱。
emerge: emerge,软件包安装与管理命令
emerge --sync
,同步目前最新软件包名称。
emerge -pv apache
,emerge -u apache
,将apache升级到最新版本。
emerge -u world
,将所有软件包升级到最新版本。
enable: enable,启动或关闭shell的默认命令
enable -a
,显示当前shell的所有启动的命令。
enable -n cd
,关闭shell内置的命令cd。
eval: evaluate,运算求出参数的内容
1 | a1 = "This is a book" |
ex: vi in execution mode,文件编辑
ex file1
,编辑文件file1。
ex相当于vi -e。
exit: exit,退出当前shell
exit
,退出并关闭当前的窗口。
export: export,设置环境变量
export exp=2.71828
,echo $exp
,将变量exp设置为2.71828。
export
,列出当前的环境变量。
expr: expression,求表达式变量的值
expr length "this is a test"
,计算字符串长度。
expr 14 % 9
,计算余数。
expr substr "this is a test" 3 5
,从位置处抓取字串。
expr index "testforthegame" e
,计算第一个e出现的位置。
fc: first command,修改或使用曾经使用的命令
fc -l
,列出运行过的指令。
fc -e vi
,用vi修改最后运行的指令,修改完自动运行。
fdisk: formatted disk,设置硬盘分区
fdisk -l
,列出第一块SCSI硬盘上的分区表。
fdisk /dev/sda
,进入分区管理。
fg: front ground,将进程放到前台运行
tail -f /var/log/maillog &
,fg tail
,将该进程放到前台运行。
fgrep: grep -f,查找文件中的字符串
fgrep 127.0 /etc/*
,列出/etc下文件中包含字符串127.0的所有文件。
file: file,显示文件类型
file /etc/hosts
,显示一般文件。
file /etc/view
,显示连接文件。
filefrag: file fragment,显示文件的破碎状态
filefrag -v backupfile
,检查文件backupfile的破碎状态。
find: find,查找特定的文件或目录名称
find . -name *.c
,将目前目录及其子目录下所有扩展名是.c的文件列出来。
find / -name mysql.sock
,在整个系统中查找mysql.sock文件。
find . -type f
,将目前目录其其下子目录中所有一般文件列出。
find . -ctime -20
,将目前目录及其子目录下所有最近20分钟内更新过的文件列出。
findfs: find file system,用标签或UUID查找文件系统
findfs LABEL=/
,查找名为/的文件系统。
findfs LABEL=SWAP-sda6
,查找名为SWAP-sda6的文件系统。
finger: finger,远程查询主机上的账号信息
finger scfeng@localhost
,查询本机账号scfeng的状态。
finger是早期远程查询命令,近年来由于安全考虑,几乎没有用户安装finger软件包。
fixfiles: fix files SELinux context,修正文件的SELinux标签
fixfiles restore /etc/vsftpd/*
,修正/etc/vsftpd/目录下所有文件的标签。
fmt: formatter,文件编排
cat file
,fmt -w 30 file
,进行固定宽度文件编排。
fold: fold,修改文件的显示宽度
cat file
,fold -w 20 file
,进行固定宽度文件编排。
free: free,显示内存使用状况
free
,查看内容使用状况。
free -t
,查询内存目前的状态,并列出物理内存与虚拟内存的总和。
fsck: file system check,检查或修复文件系统
在ext2文件系统下,和e2fsck功能完全相同。
ftp: file transferring protocol,文件传输
ftp 10.0.0.2
,put file
,bye
,使用ftp上传一个名为file的文件。
ftpcount: FTP count,显示当前使用FTP的人数
ftpcount
,查看当前登录FTP的人数。
ftpshut: FTP shutdown,停止ProFTP服务器
ftpshut -d 3
,3min后关闭FTP服务器。
ftpwho: FTP who,显示当前登录FTP的名单
ftpwho
,查看当前登录FTP的名单。
fuser: file and process user,通过文件或sockets确认进程
fuser -l
,列出可以使用的系统信号。
fuser -km /home
,删除与/home有关的程序。
gcc: GNU cc complier,C语言编译工具
gcc count.c
,将文件count.c编译为可执行文件。
./a.out
,运行a.out。
gcc count.c -o cc
,将文件count.c编译为可执行文件,并指定可执行文件的名称为cc。
getsebool: get SELinux boolean,显示SELinux的布尔值
getsebool ftp_home_dir
,显示是否允许通过vsftpd连接到账号的家目录。
getsebool httpd_enable_cgi
,显示是否允许httpd执行cgi script。
gpasswd: group password,管理/etc/group的高级工具
gpasswd elex
,修改elex组的组密码。
gpasswd -a feng users
,将账号feng到users组中。
gpasswd -d feng users
,将feng从users组中删除。
gpasswd -A feng users
,将feng设为users组中管理员。
gpm: graphic cut and paste manager,设置鼠标的粘贴功能
gpm -t ps2
,启动PS/2鼠标。
grep: global search regular expression,查找文件中的字符串
grep -c sum count.c
,显示count.c中包含字符串sum的行数。
grep -v sum count.c
,显示count.c中不含字符串sum的行。
grep -f file1 file2
,搜寻file2中与file1有相同字符串的内容。
groupadd: group add,新建组
groupadd admin
,新建名为admin的组。
groupadd -r super
,新建一个名为super的系统组。
groupadd -g 566 spot
,新建一个组号为566,名为spot的组。
groupdel: group del,删除组
groupdel admin
,删除名为admin的组。
groupmod: group mode,修改组的高级内容
groupmod -n admin super
,将组super的名称改成admin。
groupmod -g 666 spot
,将组spot的组号改为666。
groups: groups,显示账号所属的组
groups admin
,显示账号admin所属的组名称。
grpconv: group convert,转换为组投影密码
gunzip: GNU un-zip,解压缩gz文件
gunzip -l /var/log/* .gz
,显示目录/var/log下所有的gz文件的信息。
gunzip -c file.gz > file2
,将file.gz解压缩,并保留原压缩文件。
gunzip -r /home/mark
,将/home/mark下的所有gz文件全部解压缩。
gunzip -v file.gz
,将file.gz解压缩,并显示过程。
gzexe: GNU zip execution,运行压缩文件
gzexe -d a.out
,运行已压缩可执行文件的a.out。
gzip: GNU zip,压缩gz的文件
gzip -v output
,压缩output,并显示压缩过程。
gzip h*
,压缩当前目录下所有文件名以h开头的文件。
gzip -9 backupfile1
,指定压缩率压缩文件。
gzip -l /var/log/*.gz
,显示目录/var/log/下所有gz文件的信息。
halt: halt,关闭系统
halt -p
,关闭系统并关闭电源。
halt -d
,关闭系统,并且不记录在日志文件/var/log/wtmp中。
halt -n
,不将内存数据写入硬盘,直接关闭系统。
hash: hash table
hash -l
,显示记忆的命令。
hash -t cat
,列出命令cat的路径。
hdparm: hard disk parameter,显示或设置硬盘参数
hdparm -t /dev/sda
,评估硬盘的读取效率。
hdparm -d 1 /dev/sda
,启动硬盘的DMA模式。
hdparm -I /dev/sda
,侦测硬盘的规格。
hdparm -C /dev/sda
,侦测IDE硬盘电源管理模式。
head: head of file,输出文件内容前面的内容
head -n 3 install.log
,显示前3行内容。
head -c 30 install.log
,显示前30字节的内容。
help: help,shell内置命令说明
help alias
,显示alias命令的说明。
history: history,列出使用过的命令
history 5
,列出5个最近使用过的命令。
host: host,查询主机使用的域名
host www.taobao.com 61.139.2.69
,在DNS服务器上61.139.2.69上查询地址www.taobao.com。
host -t mx 126.com 61.139.2.69
,在机器61.139.2.69上查询网域126.com的邮件记录。
hostid: host id,显示主机ID
hostid
,显示主机的识别码。
hostname: host name,显示或设置主机名
hostname
,显示当前的主机名称。
hostname -d
,显示当前的网域名称。
hostname -i
,查询主机名对应的IP地址。
htpasswd: httpd passwd,设置Apache的账户密码
htpasswd -c /etc/htpasswd jack
,新建一个Apache登录账号jack。
httpd: HTTP deamon,管理Apache网页服务器。
httpd -v
,显示当前的apache详细信息。
httpd -f /opt/httpd.conf
,使用指定的配置文件启动httpd。
httpd -t
,测试配置文件的语法是否正确。
httpd -l
,显示httpd编译时所包含的模块。
hwclock: hardware clock,显示或设置硬件时间
hwclock
,显示硬件日期与时间。
hwclock --set --date="5/1/11 12:15:01"
,将硬件时钟修改为2011年5月1日12点15分01秒。
iconv: internet conversion,字符集的转换
iconv -l
,列出所有支持的格式。
id: identity,显示账号与组的ID
id -a
,显示所有的账号信息。
id -g
,显示账号所属的主组代码。
id -u
,显示账号代码。
ifconfig: interface configuration,设置或查看网络配置
ifconfig
,显示当前的网络设备及其状态。
ifconfig eth0 192.168.1.5 netmask 255.255.255.0
,将IP地址设置为192.168.1.5,子网掩码设置为255.255.255.0。
ifconfig eth0
,显示eth0的状态。
ifconfig eth0 down
,将eth0停用。
info: information,显示在线帮助信息
info kill
,查看kill的在线帮助信息。
init: initial,改变系统的运行等级
init 0
,关闭计算机。
init 6
,重新开机。
init 1
,进入单用户模式。
insmod: insert module,价值模块
insmod brdcom.ko
,加载模块brdcom.ko。
ip: internet protocol,显示或设置网络设备的路由策略
ip address show
,显示当前网络地址的设置。
ip route show
,显示当前的路由列表。
ip route add 172.16.1.0/24 via 192.168.1.1
,多重路由的设置:发往172.16.1.0/24的数据包,一律通过192.168.1.1传送。
ipcrm: interprocess communication remove,删除指定ID的IPC进程。
ipcs
,ipcrm -m 262149
,显示内部程序目前的状态,并将其中的共享内存删除。
ipcs: interprocess communication status,显示IPC的状态
ipcs
,显示内部程序目前的状态。
iptab: IP table,显示子网掩码的种类
iptab
,显示子网掩码的种类。
iptables: IP tables,数据包处理与安全管理
iptables -L
,显示当前iptables的设置。
iptables -F
,iptables -X
,将iptables中过滤表格的规则清楚。
1 | echo "1" > /proc/sys/net/ipv4/ip_forwarding |
开启NAT功能,设置10.1.1.1~10.1.1.254可通过本机连接到互联网。
1 | iptables -A INPUT -p tcp --dport 25 -j ACCEPT |
仅开启SMTP与HTTP的连接,关闭其他端口的连接。
iptables -A input -d 140.111.1.1 -p tcp -j DROP
,不得连到IP地址140.111.1.1。
iptables-save: IP tables save,保存当前iptables的规则
iptables-save
,保存当前iptables的规则。
isosize: ISO size,显示iso9600格式的文件系统大小
isosize /dev/hdc
,显示当前光盘的容量。
jobs: job status,显示正在后台运行的任务
jobs
,显示在后台运行的任务。
jobs -p
,仅列出在后台运行的任务的PID。
join: join,合并两个文件中相同的区域
join -t ':' /etc/passwd /etc/shadow
,将两个文件结合,以冒号作为字符串的分隔符。
kill: kill,传送信息给进程
kill -l
,列出所有的信号与代码。
ps -ef | grep mysql
,kill -9 6887
,查看mysql的PID,并且结束该PID。
killall: kill all,根据给定名称终止进程
killall -9 ntop
,将所有关于ntop命令的程序删除。