Linux常用命令

压缩备份

bzip2

功能说明:.bz2.bz文件的压缩程序。实际上bunzip2是bzip2的硬链接,因此不论是压缩或解压缩,都可通过bzip2指令完成。

语法:bzip2 [-options][文件…]

-d   解压缩文件。

-z   压缩文件。

-f   生成文件覆盖同名文件

-k   保留原始文件(默认只保留生成的文件)。

-t    测试.bz2压缩文件的完整性。

 

bunzip2

功能说明:.bz2.bz文件的解压缩程序。

语法:bunzip2 [-fk][文件]

 

gzip

功能说明:.gz文件的压缩程序。实际上gunzip是gzip的硬链接,因此不论是压缩或解压缩,都可通过gzip指令完成。

语法:gzip [-options][文件…]

gzip [-r options][目录]

-d   解压缩文件。

-f   压缩文件。

-r    递归处理。

-t    测试.gz压缩文件的完整性。

 

gunzip

功能说明:.gz文件的解压缩程序。

语法:gunzip [-ft][文件…]

gunzip [-frt][目录]

 

zip

功能说明:.zip文件的压缩程序。

语法:zip [-options][压缩文件][文件/目录…][-i 文件…] [-x 文件…]

参数:

-d   从压缩文件内删除指定的文件。

-u   替换比压缩文件内副本文件新的文件,如果不在压缩文件内,将被加入到压缩文件中。

-f   替换比压缩文件内副本文件新的文件,如果不在压缩文件内,将不会被加入到压缩文件中。

-m  将文件压缩并加入指定的压缩文件后,删除原始文件。

-r    递归处理。

-S   包含系统和隐藏文件。

-y   压缩符号链接,而非该链接所指向的文件。

-i    指定要处理的文件。

-x   指定不需要处理的文件。

 

unzip

功能说明:.zip文件的解压缩程序。

语法:unzip [-options][压缩文件][文件][-x 文件][-d 目录]

参数:

-f   只解压缩已经存在而且压缩文件中的副本文件比现有文件新的文件。

-u   解压缩所有文件。

-t    检查压缩文件是否正确。

-n   解压缩时不覆盖现有文件。

-o   解压缩时覆盖现有文件。

-x   指定不需要处理的压缩文件中的文件。

-d   指定文件解压缩后所要存储的目录。

 

zipinfo

功能说明:列出.zip压缩文件信息。

语法:zipinfo [-options][压缩文件][文件][-x 文件]

参数:

-1   只列出文件名称。

-2   可搭配"-h","-t"参数使用。

-h   列出首行信息,包括压缩文件名,实际大小(bytes)和显示出来的文件数目。

-t    列出显示出来的文件数目,压缩前后的文件大小及压缩率。

-s   用"ls -l"的效果列出压缩文件的内容。

-m  和"-s"类似,并且会列出每个文件的压缩率。

-l    和"-s"类似,并且会列出原始文件的大小。

-x   指定不需要处理的压缩文件中的文件。

 

tar

功能说明:用来建立,还原.tar备份文件的程序。

语法:tar [-options][-f 备份文件][--delete][--remove-files][文件或目录…]

-k   还原备份文件时,不覆盖同名文件。

-j    通过bzip2指令处理备份文件(.bz2)。

-z   通过gzip指令处理备份文件(.gz)。

--remove-files     文件加入备份文件后,就将其删除。

以下参数必须用并且只能用一个:

-A  添加.tar文件到-f指定的备份文件。

-c   建立备份文件。

-r    添加文件到-f指定的备份文件。

-t    列出-f指定的备份文件的内容。

-u   只添加比备份文件中副本文件新的文件。

-x   从备份文件中还原指定的文件,如果不指定文件,就还原所有文件。

--delete   从备份文件中删除指定的文件。

文件处理

file

功能说明:显示文件类型。

语法:file [文件…]

chgrp

功能说明:变更文件或目录的所属群组。

语法:chgrp [-hR][群组名称或群组id][文件或目录…]

chgrp [-hR][--reference=参考文件或目录][文件或目录…]

参数:

-R  递归处理。

-h   处理的是符号链接而不是原文件。

--dereference      处理的是原文件而不是符号链接的。

chown

功能说明:变更文件或目录的拥有者或所属群组。设置用户采用用户名称或用户id皆可,设置群组可以群组名称或群组id。

语法:chown [-hR][--dereference][用户名称或用户id:群组名称或群组id][文件或目录…]

chown [-hR][--dereference][:群组名称或群组id][文件或目录…]

chown [-hR][--dereference][--reference=参考文件或目录][文件或目录…]

 

chmod

功能说明:变更文件或目录的权限。

语法:chmod [-R][权限范围+/-/=权限设置][文件或目录…]

chmod [-R][数字代号][文件或目录…]

chmod [-R][--reference=参考文件或目录][文件或目录…]

权限范围如下:                    权限设置如下:

u:拥有者。                           r:读权限,       "4"。

g:拥有群组。                       w:写权限,     "2"。

o:其他用户。                       x:执行权限,  "1"。

a:全部的用户。                   -:无任何权限,"0"。

数字代号:

拥有者的权限

拥有群组的权限

其他用户的权限

cp

功能说明:复制文件或目录。

语法:cp [-options][源文件或目录][目标文件或目录]

参数:

-b   若需覆盖文件,则覆盖前先行备份。

-L  当复制符号链接时,复制原文件。

-d   当复制符号链接时,把目标文件或目录也建立为符号链接。

-l    建立硬链接,而非复制文件。

-s   建立符号链接,而非复制文件。

-f   强制复制文件或目录。

-i    询问用户。

-p   保留文件或目录的所有属性。

-r    递归处理。

-u   只有文件比目标文件新时才进行复制。

 

mv

功能说明:移动/更名文件或目录。

语法:mv [-options][源文件或目录][目标文件或目录]

参数:

-b   若需覆盖文件,则覆盖前先行备份。

-f   强制移动文件或目录。

-i    询问用户。

-u   只有源文件比目标文件新时才进行移动。

 

install

语法:install [-Cp][-g 群组][-m 权限][-o 拥有者][源文件][目的文件]

install [-Cp][-g 群组][-m 权限][-o 拥有者][源文件…][目的目录]

-C  如果目的文件存在且和源文件一致,则跳过安装。

-p   保留文件的存取/更改时间。

 

rm

功能说明:删除文件或目录。

语法:rm [-options][文件或目录…]

参数:

-f   强制删除文件或目录。

-i    询问用户。

-r    递归处理。

 

find

功能说明:查找文件或目录,默认进行的是递归处理。

语法:find [目录…][-name 文件或目录]

which

功能说明:在环境变量$PATH设置的目录中查找指定的命令。

语法:which [命令]

 

grep

功能说明:查找文件里符合条件的字符串。

语法:grep [-options][-A 行数][-B 行数][-C 行数][-m匹配数目][范本样式][文件或目录…]

grep [-options][-A 行数][-B 行数][-C 行数][-m匹配数目]

[-e 范本样式][-f 范本文件][文件或目录…]

参数:

-A  显示匹配行之后指定行数的内容。

-B  显示匹配行之前指定行数的内容。

-C  显示匹配行前后指定行数的内容。

-F   将范本样式解释为字符串(默认是解释为正则表达式)。

-f   指定范本文件,其内容含有一个或多个范本样式(每行一个范本样式)。

-h   只显示匹配行,不显示匹配文件名(默认显示匹配文件名)。

-l    只显示匹配文件名,不显示匹配行。

-L  显示不匹配文件名。

-m  找到指定数目的匹配后就停止查找。

-i    忽略字符大小写的差别。

-r    递归处理。

-v   显示非匹配的行。

 

touch

语法:touch [-options][-r 参考文件或目录][-t日期时间][文件或目录…]

参数:

-a   只更改存取时间。

-m  只更改变动时间。

-t    指定日期时间:CCYYMMDDhhmm.ss

 

ln

功能说明:链接文件或目录。ln在文件之间创建链接,给某个文件指定另外一个可用于访问它的linkname。对于这个linkname,我们可以指定不同的访问权限,而且即使删除这个链接,也不会影响原来的目录。链接有两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(SymbolicLink)。硬链接会在linkname的位置上生成一个和源文件大小相同的文件;软链接只在linkname的位置上生成一个文件的镜像,不会占用磁盘空间。无论是软链接还是硬链接,文件都保持同步变化。默认情况下,ln产生硬链接;如果加上-s选项,则建立符号链接。如果linkname是一个目录名,将在该目录之下建立与src同名的链接文件。

语法:如果省略链接名,则在当前文件夹下创建与target同名的链接:

ln [-options][原文件][链接名]

在指定目录下为每一个原文件创建链接:

ln [-options][原文件…][目录]

参数:

-b   若需覆盖文件,则覆盖前先行备份。

-d   建立硬链接(默认)。

-s   建立符号链接。

-f   强制建立链接。

-i    询问用户。

 

split

功能说明:分割文件,默认每个小文件1000行。

语法:split [-l 行数][-b 字节][文件][输出文件名]

参数:

[输出文件名]     split会自动在输出文件名之后加上编号。

 

wc

功能说明:显示文件的行数、字数和字节数。

语法:wc [-options][文件…]

参数:

-l    显示行数。

-w  显示字数,就是以空格隔开的字的个数。

-c   显示byte数,包含文件结束符。

磁盘和目录

ls

语法:ls [-options][目录或文件…]

参数:

-a   所有文件和目录。

-l    使用详细格式列表。

-F   在可执行文件(*),目录(/),Socket(=),符号链接(@),管道名称( | )后面加上符号。

-h   以K,M,G为单位,提高信息的可读性。

-L  如遇到符号链接文件或目录,直接列出该链接所指向的原始文件或目录。

-R  递归处理。

-r    反向排序。

-S   以大小排序,从大到小。

-t    以更改时间排序。

-u   以存取时间排序。

du

功能说明:显示目录或文件的大小。

语法:du [-options][-L 符号链接][目录或文件…]

参数:

-a   显示所有目录(包括子目录),所有文件(包括子目录下文件)的大小。

-c   显示所有目录和文件的总计大小。

-D  显示符号链接的源文件大小。

-h   以K,M,G为单位,提高信息的可读性。

-s   仅显示所有目录和文件的总计大小。

-S   显示目录的大小时,并不含其子目录的大小。

mkdir

功能说明:建立目录

语法:mkdir [-p][-m 权限][目录…]

参数:

-p          若要建立目录的上层目录尚未建立,则会建立上层目录。

 

rmdir

功能说明:删除空目录。

语法:rmdir [-p][目录…]

参数:

-p          删除指定目录后,若该目录的上层目录已变成空目录,则将其一并删除。

 

df

功能说明:显示磁盘信息。

语法:df [-options]

参数:

-a   显示全部磁盘的信息。

-h   以K,M,G为单位,提高信息的可读性。

 

网络命令

telnet

语法:telnet [-a][-l 用户名][主机名或IP地址[端口]]

参数:

-a   自动登录。

 

ifconfig

功能说明:显示或设置网络设备。

语法:ifconfig  [网络设备][inet inet6 ipx][down up allmulti arp promisc]

[add IPv6地址][del IPv6地址][hw 网络类型 物理地址]

[metric 转发数目][mtu 字节数]

[broadcast 广播地址][netmask子网掩码] [IP地址]

参数:

inet              TCP/IP

inet6     IPv6

ipx        NovellIPX

up         启动网络设备。

down    关闭网络设备。

arp               设定网络设备使用ARP协议。

allmulti        设定网络设备接收multicast的数据包。

promisc        设定网络设备接收网络上的所有数据包。

hw               设置网络设备的类型与物理地址,其中网络类型一般为ether。

metric          设置网络设备在接收并转发数据包时,需要加上的转发次数。

mtu              设定网络设备的MTU。

broadcast     将指定地址设定为广播地址。

 

netstat

功能说明:显示网络状态。

语法:netstat [-options][-A 网络类型]

参数:

-a   显示所有的socket(listening and non-listening)。

-A  可以指定的网络类型有:inet,unix,ipx等。

-c   每秒显示一次网络状态。

-e   显示网络相关信息。

-g   显示广播组成员信息。

-i    显示所有网络接口的列表。

-n   显示数字化的IP地址。

-o   显示network timer的相关信息。

-p   显示socket所属程序的名字和PID。

-r    显示内核的路由表。

-s   显示每种协议的简要统计信息。

--tcp      显示TCP的信息。

--udp    显示UDP的信息。

--raw     显示RAW的信息。

 

ping

功能说明:ping指令使用ICMP协议,发送需要回复的信息,若网络正常,就会收到回复。

语法:ping [-options][-c 次数][-l数据包数目][-i 间隔秒数][-I 网络设备 IP地址]

[-s 数据包大小][-p 数据包的内容][-W 等待秒数][-w 持续秒数][-t ttl值]

[主机名称或IP地址]

参数:

-b   允许ping一个广播地址。

-c   发送完指定次数的ECHO_REQUEST数据包后,停止发送。

-f   每发送一个ECHO_REQUEST数据包,就打印一个‘.’;

每收到一个ECHO_REPLY数据包,就删除一个‘.’。

-i    设定发送数据包的时间间隔,只有超级用户才能设定小于0.2s(默认是100/s)。

-I   设定发送数据包的源地址。

-l    设定在收到回复之前可以发送的数据包数目,只有超级用户才能设定大于3。

-n   显示数字化的IP地址。

-p   指定数据包的内容,最多可以指定16个字节,指定的内容重复放入数据包。

-r    忽略路由表,直接将数据包送到远端主机上,如果远端主机不是直接可达的,返回error。

-R  记录路由过程。

-s   设置数据包的大小。默认是56 bytes,加上ICMP 8bytes的header,一共就是64bytes。

-w  设定ping命令持续的秒数

-W 设置等待回复的时间,默认是2个RTT。

 

traceroute

功能说明:显示数据包到主机间的路径。预设数据包大小是40Bytes。

语法:traceroute [-options][-f ttl值][-i 网络接口][-m max-ttl值][-t 服务类型][-p 端口]

[-s 源IP地址>][-w 等待秒数][-z 间隔时间][主机名称或IP地址][数据包大小]

参数:

-F   设置IP包头中的DF位。

-i    使用指定的网络接口发送数据包。

-I   使用ICMP ECHO代替UDP包。

-n   显示数字化的IP地址。

-p   设置UDP的通信端口。

-r    忽略路由表,直接将数据包送到远端主机上,如果远端主机不是直接可达的,返回error。

-s   设置主机送出数据包的IP地址。

-t    设置IP包头中的TOS位。

-w  设置等待远端主机回复的时间,默认是5s。

-x   开启或关闭数据包的checksum。

-z   设置发送数据包的时间间隔,单位是ms。推荐是500,即0.5s。

 

mail

语法:mail [-options][-b 密送地址][-c抄送地址][-s 邮件主题][-u 用户帐号][收信人地址]

参数:

-b   指定密件副本的收信人地址。

-c   指定副本的收信人地址。

-I   使用互动模式。

-s   指定邮件的主题。

-u   读取指定用户的邮件。

 

mailq

功能说明:显示待寄邮件的清单。

用户管理

useradd

功能说明:建立用户帐号。

语法:useradd [-c 备注][-d 登入目录][-e YYYY-MM-DD][-f 缓冲天数][-g 群组][-G 附加群组]

[-s shell][-p password][-u 用户ID][用户帐号]

参数:

-c   加上备注文字,备注文字会保存在passwd的备注栏位中。

-d   指定用户登入时的启始目录。

-e   指定帐号的截止日期。

-f   指定在密码过期多少天后,关闭该帐号。

 

userdel

功能说明:删除用户帐号。

语法:userdel [-r][用户帐号]

补充说明:若不加参数-r,则仅删除用户帐号,而不删除相关文件。

 

usermod

功能说明:修改用户帐号。

语法:usermod [-LU][-c 备注][-d 登入目录][-e 截止日期][-f 缓冲天数][-g 群组][-G 附加群组]

[-s shell][-p password][-l 帐号名称][-u 用户ID][用户帐号]

参数:

-L  锁定用户密码。

-U  解除密码锁定。

 

passwd

语法:passwd [-options][用户帐号]

补充说明:只有管理者可以指定用户名称,一般用户只能变更自己的密码。

参数:

-d   删除密码,只有系统管理者才能使用。

-k   设置只有在密码过期失效后,方能更新。

-l    锁住密码。

-u   解锁密码。

logname

功能说明:显示当前用户的名称。

whoami

功能说明:显示当前用户名称。

id

功能说明:显示用户的ID,以及所属群组的ID。

语法:id [用户帐号]

 

w

功能说明:显示目前登入系统的用户信息。

语法:w [用户名称]

who

功能说明:显示目前登入系统的用户信息。

语法:who [-options]

参数:

-H  显示标题信息。

-w  显示用户信息状态栏。

-u   显示闲置时间,格式:HH:MM

-q   只显示登入系统的帐号名称和总人数。

 

finger

功能说明:查找并显示用户信息。

语法:finger [用户名称]

补充说明:用户名称没有大小写的区别。

chfn

功能说明:改变finger指令显示的信息。

语法:chfn [-f 真实姓名][-h 家中电话][-o 办公地址][-p 办公电话][帐号名称]

补充说明:若不指定任何参数,则chfn指令会进入问答式界面。

 

last

功能说明:列出目前与过去登入系统的用户相关信息。

语法:last [-options][-t YYYYMMDDHHMMSS][帐号名称][终端机编号]

参数:

-d   将IP地址转换成主机名称。

-t    显示指定时间时用户的登录信息

 

su

功能说明:变更用户身份。

sudo

功能说明:以其他身份来执行指令。

语法:sudo [-u 用户][指令]

补充说明:用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。

 

用户组管理

groupadd

功能说明:新建群组。

语法:groupadd [-g 群组id][群组名称]

groupdel

功能说明:删除群组。

语法:groupdel [群组名称]

补充说明:如果群组中仍包括用户,则必须先删除用户后,方能删除群组。

 

groupmod

功能说明:更改群组id或名称。

语法:groupmod [-g 群组id][-n 新群组名称][群组名称]

 

newgrp

功能说明:登入另一个群组。

语法:newgrp [群组名称]

补充说明:newgrp指令是以相同的帐号,另一个群组名称,再次登入系统。若不指定群组名称,则newgrp指令会登入预设群组。

系统管理

alias

功能说明:设置指令的别名。

语法:alias [别名]=[指令名称]

补充说明:若仅输入alias,则可列出目前所有的别名设置。alias的效力仅限于本次登录。若要在每次登录中使用别名,可在.profile中设定指令的别名。

 

unalias

功能说明:删除别名。

语法:unalias [-a][别名]

参数:

-a   删除全部的别名。

 

export

功能说明:设置或显示环境变量。

语法:export [-options][变量名称]=[变量设置值]

补充说明:export的效力仅限于本次登录。

参数:

-p 列出所有的环境变量。

 

chsh

功能说明:更换登入系统时使用的shell。

语法:chsh [-l][-s shell][用户名称]

补充说明:若不指定任何参数与用户名称,则chsh会以交互的方式进行设置。

参数:

-l    列出目前系统可用的shell清单。

 

date

功能说明:显示或设置系统时间与日期。

语法:date [-u][MMDDhhmmCCYYss]

补充说明:只有管理员才能设置日期与时间。若不加任何参数,data会显示目前的日期与时间。

参数:

-u   显示GMT。

 

free

功能说明:显示内存状态。

语法: free [-options][-s 间隔秒数][-c 显示次数]

参数:

-t    显示内存总数。

-b   以Byte为单位显示内存使用情况。

-k   以KB为单位显示内存使用情况。

-m  以MB为单位显示内存使用情况。

 

ps

语法:ps [-options][options][-C 进程名称] [-p pid>][-s sessionid][-t 终端编号]

[-G real群组名称或群组id][-g effective群组名称]

[-U real用户名称或用户id][-u effective用户名称或用户id]

参数[-options]:

-e   显示所有进程。

-f   采用full-format显示。

-F   采用extra full-format显示。

-l    采用long format显示。

-L  显示线程,并显示LWP和NLWP信息。

-T   显示线程,并显示SPID信息。

-H  采用树状结构显示。

-m  在进程之后显示线程。

 

参数[options]:

T    只显示当前终端的进程

r     只显示运行的进程

s     采用signal format显示

u    采用user oriented format显示

v    采用virtual memory format显示

S    将死亡子进程的一些信息加到父进程中

f     采用树状结构显示。

H   将线程当作是进程来显示

 

pstree

功能说明:以树状图显示进程。

语法:pstree [-options][-H pid][pid/用户名称]

补充说明:如果不指定pid或用户名称,则会把系统启动时的第一个进程视为基层,并显示之后的所有进程。若指定用户名称,便会以隶属该用户的第一个进程当作基层,然后显示该用户的所有进程。

参数:

-a   显示每个进程的完整指令,包含路径,参数等。

-c   不使用精简标示法。

-h   特别标明现在执行的进程。

-H  特别标明指定的进程。

-n   用进程id排序。预设是以进程名称来排序。

-p   显示进程id。

-u   显示用户名称。

 

 

jobs

语法:jobs [-options]

-l    列出pid

-r    只显示执行中的jobs

-s   只显示已经停止的jobs

 

kill

功能说明:删除执行中的process或job。

语法:kill [-s 信号名称或编号][pid/pgid/jobspec]

kill -l

补充说明:kill可将指定信号送至程序,预设信号为SIGTERM(15)。若仍无法终止程序,可使用SIGKILL(9)信号强制删除程序。

-l    列出全部的信号名称。

 

nice

功能说明:设置优先权。

语法:nice [-n 优先等级][程序名称]

补充说明:优先等级的范围从-20-19,其中-20最高,19最低,只有系统管理者可以设置负数的等级。

 

renice

功能说明:调整优先权。

语法:renice [-n 优先等级][-g 群组id][-p pid][-u 用户id]

补充说明:优先等级的范围从-20-19,其中-20最高,19最低,只有系统管理者可以改变其他用户程序的优先权,也仅有系统管理者可以设置负数等级。

 

halt

语法:halt [-f]

补充说明:halt先检查runlevel,若为0或6,则关闭系统,否则调用shutdown关闭系统。

参数:

-f   不论runlevel是多少,都不调用shutdown关闭系统。

 

reboot

语法:reboot [-f]

参数:reboot先检查runlevel,若为0或6,则关闭系统,否则调用shutdown关闭系统。

-f   不论runlevel是多少,都不调用shutdown关闭系统。

 

poweroff

功能说明:关闭系统。

 

shutdown

语法:shutdown [-options][时间][警告信息]

参数:

-h   将系统关机。

-k   只是送出信息给所有用户,但不会实际关机。

-r    重新启动。

时间可以取绝对时间:HH:MM;

也可以取相对时间:+m;

也可以取“now”表示现在就关机。

tload

功能说明:显示系统负载状况。

语法:tload [-d 间隔秒数][-s 刻度大小][终端编号]

参数:

-s   设置图表的垂直刻度大小,单位以列计算。

 

top

功能说明:显示,管理执行中的程序。

语法:top [-options][-d 刷新间隔秒数][-n<显示次数>][-p pid]

[-U real用户名称或用户id][-ueffective用户名称或用户id]

参数:

-c   列出程序时,显示每个程序的完整指令,包括指令名称,路径和参数等相关信息。

-i    只显示执行top指令时,忽略idle或Zombie的程序。


uname

功能说明:显示系统信息。

语法:uname [-options]

参数:

-a   显示全部的信息。

-m  显示电脑类型。

-p   显示CPU类型。

-n   显示在网络上的主机名称。

-r    显示内核发行编号。

-o   显示操作系统。

-s   显示内核名称。

-v   显示内核版本。


vlock

功能说明:锁住虚拟终端。

语法:vlock

 


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