本文摘自《Linux/UNIX指令范例速查手册》。
原文连接: http://www.voidking.com/2013/...node
adduser: add user,新建系统上的帐号linux
adduser -D
,显示新建帐号时的默认值。shell
adduser -m jos
,新建名为jos的帐号(使用系统默认值)。apache
adduser位于/usr/sbin/之下,是/usr/sbin/useradd的链接。也就是说,adduser和useradd其实是同一个命令。bash
alias: alias,定义命令及参数的别名服务器
alias
,列出现有的别名设置。网络
alias ua='uname -a'
,将uname -a的别名设置为ua。less
alias的优先级高于path(系统搜寻的路径)。工具
apachectl: apache controller,管理Apache网页服务器post
apachectl -l
,列出编入apache的模块。
apachectl restart
,重启apache。
apt-get: advanced package tool get,APT软件包管理工具。
apt-get install mailx
,安装mailx软件包。
apt-get是Linux发行商Debian与Ubuntu上的软件包管理工具,其余版本Linux没法使用。
ar: archives,打包和解压缩文件
ar -rv afile a*
,将以a开头的文件打包为afile文件。
ar -t afile
,列出打包文件中的成员文件。
ar -p afile anaconda-ks.cfg
,显示打包文件中某一文件的内容。
ar命令已被tar所取代,目前已不多使用。
arch: architecture,列出处理器的类型
arch
,列出处理器的类型。
arp: address resolution protocol,网卡地址的对应
arp
,列出arp的信息。
arp -s 10.1.1.10 00:0F:26:2A:BF:77
,将10.1.1.10强制对应到网卡号00:0F:26:2A:BF:77。
arp -d 10.1.1.10
,删除IP地址与网卡号的对应。
arping: ARP ping,网卡地址的测试命令
arping 172.20.11.1
,对172.20.11.1的IP地址进行网卡地址测试。
若不在同一个网络,arping不会有回应,这时须要用ping命令。
at: at,在指定的时间运行命令
at 5pm + 3 days /bin/ls
,三天后的下午 5 点执行 /bin/ls
。
at 5pm + 3 weeks /bin/ls
,三个星期后的下午 5 点执行 /bin/ls
。
at 17:20 tomorrow /bin/date
,明天的 17:20 执行 /bin/date
。
at 23:59 12/31/1999 echo the end of world !
,在1999年的最后一天的最后一分钟印出 the end of world !
at -l
,列出将要运行的工做。
at -c 1
,显示工做编号为1的工做。
at -d 1
,删除编号为1的工做。
awk: Alfred Aho, Peter Weinberger, and Brian Kernighan(做者名),文字数据的高级处理。
awk '{print}' /etc/passwd
,显示/etc/passwd中内容,和cat命令结果相同。
awk -F":" '{print $1 $3 $6}' /etc/passwd
,将/etc/passwd中的内容以冒号分隔,并取出第1位、第3位和第6位。
awk -F":" '{print $1 "\t" $3 "\t" $6}' /etc/passwd
,将/etc/passwd中的内容以冒号分隔,并取出第1位、第3位和第6位,并用Tab做为字段间的分隔符。
awk -F":" '{print "ID=" $1 "\t 家目录=" $6}' /etc/passwd
,将/etc/passwd中的内容以冒号分隔,并取出第1位和第6位,并用Tab做为字段间的分隔符,在第1位前加上“ID=”,第6位前加上“家目录=”。
badblocks: bad blocks,检查硬盘中损坏的区块
badblocks -v /dev/sda1
,检查损坏的区块,并显示详细信息。
适用于ext2和ext3文件系统。
batch: batch,运行批次做业
batch -f com.txt
,运行文件com.txt中的命令。
bc: arbitrary precision calculator,文字型计算器
bc
,进入计算器。能够作四则运算,也能够定义变量并作运算。
bg: background,将进程放到后台运行
cat /var/log/messages | more
,而后ctrl+z暂时中断程序。再运行bg 1
,其中1为工做编号。
将正在运行的进程移到后台运行,其效果与运行命令后面加上&效果相同。
bind: bind,显示或设置键盘配置
bind -l | grep kill
,列出与kill有关的全部功能名称。
bind -m vi -v
,列出vi的按键配置与使用的变量名称。
blockdev: block device,查询区块设备
blockdev -v --getss /dev/sda1
,列出/dev/sda1的区块大小。
blockdev -v --getsize /dev/sda1
,获取/dev/sda1的区块容量。
bunzip2: Burrows-Wheeler un-zip file,解压缩bz2格式的压缩文件。
bunzip2 -k afile.bz2
,解压afile.bz2文件,不删除原来的压缩文件。
bunzip2 -s afile.bz2
,用较少的内存解压afile.bz2文件。
bunzip2是bzip -d的功能链接。
bzgrep: Burrows-Wheeler zip file grep,查找bz2文件中特定的字符串
bzgrep router ip.txt.bz2
,寻找ip.txt.bz2压缩文件中的router字符串。
bzip2: Burrows-Wheeler zip file,将文件压缩为bz2文件
bzip2 afile
,压缩文字文件afile为afile.bz2,压缩后afile文件消失。
bzip2 -l pic.png
,压缩通常的png图像文件。
bzip2 -d pic.png.bz2
,解压文件。
bzip2recover: Burrows-Wheeler zip file recover,修复损坏的bz2文件
bzip2recover text.bz2
,当bz2文件发生问题没法解压缩时,尝试此命令来还原文件。
bzless: Burrows-Wheeler zip file less,列出bz2文件的内容
bzless afile.bz2
,列出压缩文件afile.bz2中的内容。
cal: calendar,显示日历
cal
,显示本月的月历。
cal 2000
,显示2000年年历。
cal 5 2001
,显示2000年5月月历。
cal -m
,以星期一为每周的第一天方式,显示本月的月历。
cal -jy
,以一月一日起的天数显示今年的年历。
cat: catenate,列出文件内容
cat -n textfile1 > textfile2
,把textfile1的内容加上行号后,转存为textfile2。
cat -b textfile1 textfile2 >> textfile3
,把textfile1和textfile2的内容加上行号(空白行不加)以后,将内容附加到textfile3的最后。
cd: change directory,切换目录
cd /usr/bin
,进入/usr/bin/
目录。
cd ~
,回到home directory。
cd ../..
,跳到目前目录的上上两层:
cfdisk: curses formatted disk,设置硬盘分区
cfdisk
,进入分区界面。
cfdisk -P S /dev/sda
,按照扇区排序,显示第一块硬盘的分割状况。
cfdisk是传统命令fdisk的进化版。
change: change user password expiry info,改变密码的有效期
cat /etc/shadow | grep sherry
,chage -E 2018-12-31 sherry
,设置sherry帐号的密码设置在2018年12月31日失效。
chage -M 5 sherry
,要求帐号sherry必须在5天内变动密码。
chage -l sherry
,显示帐号的密码设置。
chattr: change attributes,改变文件属性
chattr +a file1
,lsattr file1
,增长文件的属性,使之能够附加数据,而没法被修改。
chattr +i file1
,改变文件属性,没法修改和删除。
chcon: change security context,修改SELinux标签
chcon -R -t httpd_sys_content_t www/
,将www目录类型改成httpd_sys_content_t。
chgrp: change group,改变文件或目录所属的组
chgrp users afile
,修改afile的组为users。
chgrp -h users tt
,修改符号链接tt的组为users。
可使用chmod实现一样的效果,所以chgrp使用频率较低。
chkconfig: check configurate,设置系统在不一样运行等级下的服务。
chkconfig --list sendmail
,列出sendmail在不一样运行等级下的状态。
chkconfig --level 35 named on
,使DNS服务器在运行等级为3和5时启动。
chkconfig --level 0123456 vsftpd on
,使FTP服务器在全部等级下启动。
chkconfig --lis | grep 3:启用
,列出runlevel3中全部开启的服务。
chmod: change mode,改变文件或目录的权限
chmod ugo+r file1.txt
,将file1.txt设为全部人可读取。
chmod a+r file1.txt
,将file1.txt设为全部人可读取。
chmod ug+w,o-w file1.txt file2.txt
,将file1.txt与file2.txt设为文件拥有者和其所属同一个群体者可写入,但其余之外的人则不可写入。
chmod u+x ex1.py
,将ex1.py设定为只有该文件拥有者能够执行。
chmod -R a+r *
,将目前目录下的全部文件与子目录皆设为任何人可读取。
chmod 777 file
,三个7,分别表示User、Group及Other的权限。
r=4,w=2,x=1。
若要rwx属性则4+2+1=7;若要rw-属性则4+2=6;若要r-x属性则4+1=7。
chmod a=rwx file
和chmod 777 file
效果相同。
chmod ug=rwx,o=x file
和chmod 771 file
效果相同。
chmod 4755 filename
,可以使此程序具备root的权限。
chown: change owner,改变文件或目录的拥有者或组
chown jessie:users file1.txt
,将文件file1.txt的拥有者设为users群体的用户jessie。
chmod -R lamport:users *
,将当前目录下的全部文件与子目录的拥有者皆设为users群体的用户lamport。
chroot: change root,切换根目录所在的路径
chroot /mnt/disk /bin/bash
,将根目录切换到/mnt/disk,并将/bin/bash做为使用的shell。
chsh: change shell,改变帐号登陆系统时所使用的shell
chsh -l
,列出全部可用的shell。
chsh
,而后指定使用的shell。
chsh -s /bin/bash peter
,指定peter帐号的shell。
clear: clear,清除画面
clear
,清屏。
clock: clock,调整RTC(Real Time Clock)时间
clock
,显示目前硬件时钟的时间。
clock --set --data="2/27/11 22:15"
,将目前硬件时钟的时间设置为2011年2月27日22:15。
clock --hctosys
,让系统时间和硬件时钟一致。
clock --systohc
,将系统时间写入硬件时钟。
cmp: compare,对比两个文件的差别
cmp test.txt text.txt
,对比两个文件。
通常使用diff命令来进行文本内容比较,cmp使用较少。
col: column,过滤特殊字符
col -f < testfile
,过滤testfile中的RLF字符。
man kill | col -b > kill.txt
,过滤全部控制字符(RLF和HRLF)。
colrm: column remove,删除指定的列
cat file | colrm 7
,删除第6列之后的字符。
cat file | colrm 2 5
,删除第2~5列的字符。
copress: compress
compress -f source.dat
,将 source.dat 压缩成 source.dat.Z,若 source.dat.Z 已经存在,内容则会被压缩档覆盖。
compress -vf source.dat
,将 source.dat 压缩成 source.dat.Z ,并列印出压缩比例。
compress -c source.dat > target.dat.Z
,指定压缩档名。
compress -b 12 source.dat
,-b 的值越大,压缩比例就越大,范围是 9-16 ,预设值是 16 。
compress -d source.dat compress -d source.dat.Z
因为系统会自动加入 .Z 为延伸档名,因此 source.dat 会自动看成 source.dat.Z 处理。
将 source.dat.Z 解压成 source.dat ,若文件已经存在,用户按 y 以肯定覆盖文件,若使用 -df 程序则会自动覆盖文件。
cp: copy file,复制文件或目录
cp aaa bbb
,将文件aaa复制命名为 bbb。
cp *.c finished
,将全部的.c文件复制到finished目录中。
cpio: copy in, copy out,文件备份
ls | cpio -o -O ./backupfile
,将目录下的全部文件(不包含子目录)备份到backupfile。
cpio -t -v -I backupfile
,查看备份文件backupfile中的文件信息。
crontab: cron table,设置计划任务
crontab -l
,列出本身的计划任务设置。
crontab -e
,编辑本身的计划任务。
若要在每周六运行/usr/bin/w >> /root/login.txt
,可设置以下:
* * * * 6 /usr/bin/w >> /root/login.txt
若要改成天天23:55运行以上命令,可设置以下:
55 23 * * * /usr/bin/w >> /root/login.txt
crontab -u adm -r
,删除adm帐号的计划任务设置。
一、确认crontab是否安装crontab
,若是报 command not found,就代表没有安装
二、安装 crontabyum install -y vixie-cron
三、确认是否安装成功:
执行 crontab -l
四、看是否设置了开机自动启动chkconfig --list crond
五、启动crontabservice crond start
csplit: content split,分割文件
csplit -n 3 vsftpd.log 3000
,以3000行为界分割为两个文件,并指定列出的文件名位数为3。
csplit -f file vsftpd.log 3000
,以3000行为界分割为两个文件,且指定分割的文件名以file开头。
csplit vsftpdlog 1000 {7}
,以1000行为界分割为7个文件。
ctrlaltdel: control alt del,设置Ctrl+Alt+Del快捷键。
ctrlaltdel hard
,设置为不保存数据当即重启。ctrlaltdel soft
,设置为保存数据、中止服务、卸载文件后重启。
cut: cut,截取文本内容的指定范围
cat log1
,正常查看文件。
root pts/0 2013-04-29 00:52(192.168.222.1) root pts/0 2013-04-29 00:52(192.168.222.1) root pts/0 2013-04-29 00:52(192.168.222.1)
cut -b 3,10 log1
,只取出第三、10个字节。
op op op
cut -b -3 log1
,取前3个字节。
roo roo roo
date: date,显示或修改日期时间
date
,显示当前日期和时间。
date +%B%d
,显示月份与日数。
dd: standard input, standard output,转换并列出数据
dd if=file.txt of=/dev/fd0
,将文件file.txt写入到软盘。
dd if=boot.img of=/dev/fd0 bs=1440k
,制做启动盘,其中,boot.img为开机的镜像文件。
dd if=test.txt of=out.txt conv=ucase
,将文件test.txt中的英文字母所有转换为大写后,存储为out.txt。
debugfs: debug file system,ext2和ext3的文件系统改错工具
debugfs /dev/sda7
,dump install.log /root/bkp.txt
,将/dev/sda7下的install.log文件导出一份放到/root/bkp.txt中。
declare: declare,声明环境变量
declare
,显示当前的shell变量。
declare -x
,显示全部的环境变量。
declare -i number=100+200
,echo $number
,若是不加-i,系统会以字符串方式来处理100+200。
declare命令与export命令相比,区别在于declare声明的是shell变量,export声明的是环境变量。shell变量只能给shell只用,环境变量能够给shell以及外部命令使用。declare加上-x参数,则与export的做用相同。
depmod: dependence of module,分析可加载模块的关联性
depmod -a
,检测模块的关联性。
df: display file system,显示文件系统的使用状况
df
,显示当前文件系统的使用情况。
df -m
,以MB为单位来显示当前文件系统的使用情况。
df -a
,显示全部文件系统的使用情况。
df -h
,以较易读取的方式显示文件系统的使用情况。
df -i
,显示系统inode的状态。
diff: diffrence,比较并显示文件差别
diff file1 file2
,对比file1和file2。
diff -c file1 file2
,对比file1和file2,并列出文件的异同。
diff -y file1 file2
,对比file1和file2,并以并列的方式显示对比结果。
diff -B file1 file2
,对比file1和file2,不对比空白行。
diff /etc/mail/ mail/
,比较两个目录的差别。
diffstat: diffrence statistics,根据diff的比较结果显示统计数字
diff /etc/mail/ mail/ | diffstat
,对比两个目录的差别,并经过diffstat命令列出。
dig: dig,显示域名的高级信息
dig sina.com
,查询域名sina.com。
dig 163.com -t MX
,查询163.com的邮件名称记录(MX record)。
dir: directory,列出目录或文件名
dir
,列出当前目录的文件。
dir -l
,以长列表列出当前的文件。
dir命令和ls命令的功能彻底相同。
dirname: directory name,列出当前路径下的路径名称
dirname /opt/httpd
,显示/opt/httpd下的路径名称。
dirname file.txt
,显示file.txt文件的路径名称。
dpkg: Debian package,Debian软件包管理工具
dpkg -L postfix
,列出postfix安装的文件。
dpkg -i ./unzip_6.0-1_i386.deb
,安装当前路径下的unzip_6.0-1_i386.deb。
dpkg是Debian和Ubuntu上的软件包安装指令,相似于RedHat与Fedora上的rpm,但通常较常使用apt-get。
du: display units,显示目录或文件的大小
du
,显示当前目录的使用状况。
du -sk /var/*
,显示/var目录下全部文件的容量,仅显示总和,默认以KB为单位。
du -sh /*
,以可读性高的方式显示根目录下的目录容量。
du --max-depth=2 /var
,显示/var目录下两层子目录所占用的空间。
du -b backupfile
,显示文件占用的空间。
dump: dump,文件系统的备份
dump -0 -f /opt/backup /boot
,将/boot下的数据备份到/opt/backup中,并更新/etc/dumpdates中的记录。
cat /etc/dumpdates
,查看更新后的记录。
restore -r -f /opt/backup
,还原backup到备份的位置。
dump命令经常使用来备份ext2和ext3文件系统。
restore命令是dump命令的逆命令。