linux常用命令

目录

1、 别名alias

2、 定期运行命令anacron

3、 三剑客之一:awk

4、 在设备上搜索坏块badblocks

5、 从文件名中剥离目录和后缀,提取目录名basename

6、 将后台的工作运行起来bg

7、 由第一行到最后一行连续显示在屏幕上cat

8、 更改用户密码有效期信息chage

9、 更改系统文件属性chattr

10、 修改SElinux的安全上下文chcon

11、 更改finger信息chfn

12、 finger-用户信息查找程序

13、 更改所有组chgrp

14、 管理系统服务默认开机启动与否chkconfig

15、 更改文件权限chmod

16、 更改文件所有者或组或所有者与组chown

17、 批量更新密码chpasswd

18、 chroot-运行命令或具有特殊根目录的交互式shell

19、 更改您的登录外壳chsh

20、 复制、更新CP

21、 选取字段cut

22、 crontab-为个别用户维护crontab文件

23、 文件传输工具curl

24、 打印或设置系统日期和时间date

25、 转换并复制文件dd

26、 报告文件系统磁盘空间使用情况df

27、 逐行比较文件diff

28、 查看系统硬件dmidecode

29、 估计文件空间使用量du

30、 列出目前的shell环境的所有环境变量与其内容env

31、 查询或控制网络驱动程序和硬件设置ethtool

32、 exec-用给定的命令替换shell。

33、 系统设置export

34、 linux分区表操作器fdisk

35、 调用后台到前台fg

36、 确定文件类型file

37、 搜索目录层次结构中的文件find

38、 显示系统中的可用和已用内存量free

39、 检查和修复文件系统fsck

40、 通过文件(或文件系统)找出正在使用该文件的程序fuser

41、 显示SElinux模式getenforce

42、 三剑客二:全面搜索正则表达式,并将其打印出来grep

43、 groupadd-创建一个新的组

44、 删除组groupdel

45、 修改系统上的组定义groupmod

46、 打印用户所在的组groups

47、 压缩或扩展文件gzip,gunzip,zcat

48、 输出文件的第一部分head

49、 查看历史history

50、 显示或设置系统的主机名hostname

显示或设置系统的NIS/YP域名domainname

显示或设置系统的NIS/YP域名ypdomainname

显示或设置系统的NIS/YP域名nisdomainname

显示系统的DNS域名dnsdomainname

51、 hwclock-查询并设置硬件时钟(RTC)

52、 id-打印真实有效的用户和组id

53、 显示或配置网络设备(网络接口卡) 或修改ifconfig

54、 阅读信息文档info

55、 iptables-管理工具的IPv4包过滤和NAT

56、 iptables-save将iptables规则转储到stdout

57、 显示/操作路由、设备、策略路由和隧道ip

58、 查看目前后台工作jobs

59、 将两个文件的行连接到一个公共字段join

60、 按名称杀死进程killall

61、 显示最近登录用户的列表last

62、 查看文件less

63、 在文件之间建立链接ln

64、 按名称查找文件locate

65、 显示文件的文件名和相关属性;列出目录内容ls

66、 显示文件隐藏属性lsattr

67、 列出所有可用块设备的信息lsblk

68、 显示已载入系统的模块lsmood

69、 显示当前设备的总线

70、 列出scsi/sata设备信息lsscsi

71、 显示逻辑卷的属性lvdisplay

72、 制作目录mkdir

73、 查看文件more

74、 挂载文件系统mount

75、 移动(重命名)文件,更新文件 mv

76、 nl文件的行数

77、 更新用户的身份验证令牌passwd

78、 显示进程树pstree

79、 报告当前进程快照ps

80、 显示物理卷的属性pvdisplay

81、 显示当前路径pwd

82、 删除文件和目录rm

83、 删除空目录rmdir

84、 显示/操作IP路由表route

85、  rpm包安装

86、 三剑客之三:输入流编辑器sed

87、 打印数字序列seq

88、 对文本文件的行进行排序sort

89、 另一个研究套接字的实用程序ss

90、 由最后一行到第一行反向在屏幕上显示出来tac

91、 输出文件的最后一部分tail

92、 打包命令tar

93、 抓包tcpdump

94、 检查文件类型并比较值test

95、 顶部显示Linux任务top

96、 更改文件时间戳,修改文件时间或创建新文件。touch

97、 翻译或删除字符tr

98、 报告或省略重复的行uniq

99、 创建或更新用户信息useradd

100、 删除用户帐户和相关文件userdel

101、 为每个文件统计换行符,单词和字节数wc

102、 显示(shell)命令的完整路径which

103、 显示谁登录who

104、 显示谁登录了,他们在做什么w

105、 yum-yum源安装

  1. 别名alias

 alias [-p] [name[=value] ...]

常用命令详解: 

-p

打印已经设置的命令别名

注意

使用alias时,用户必须使用单引号 '' 将原来的命令引起来,防止特殊字符导致错误。

alias命令的作用只局限于该次登入的操作。若要每次登入都能够使用这些命令别名,则可将相应的alias命令存放到bash的初始化文件 /etc/bashrc中。

 

  1. 定期运行命令anacron

 

  anacron [-s] [-f] [-n] [-d] [-q] [-t anacrontab] [-S spooldir] [job]

  anacron [-S spooldir] -u [-t anacrontab] [job]

  anacron [-V|-h]

  anacron -T [-t anacrontab]

常用命令详解:

-f

强制执行作业,忽略时间戳。

-u

只更新作业的时间戳到当前日期,但不运行任何操作

-s

序列化作业的执行。

-n  

立即运行

-d    

向标准错误和syslog输出信息消息。

-q 

将消息抑制为标准错误。只适用于-d。

-t

使用指定的anacrontab,而不是默认值

 

  1. 三剑客之一:awk

  1. 在设备上搜索坏块badblocks

badblocks  [  -svwnfBX  ]  [  -b block-size ] [ -c blocks_at_once ] [ -e max_bad_blocks ] [ -d read_delay_factor ] [ -i input_file ] [ -o output_file ] [ -p num_passes ] [ -t test_pattern ] device [ last-block ] [ first-block ]

常用命令详解: 

-b block-size

以字节为单位指定块的大小。默认值为1024。

-i input_file

阅读已经存在的已知坏块列表。

-n    

使用非破坏性读写模式。

-o output_file

将坏块列表写入指定的文件。

-p num_passes

重复扫描磁盘。默认值为0,

-s   

显示扫描的进度。

-t test_pattern

指定要读取(和写入)磁盘块的测试模式。

-v    

详细模式。

-w   

使用写模式测试。

 

  1. 从文件名中剥离目录和后缀,提取目录名basename 

 basename NAME [后缀]

 basename OPTION... NAME...

 常用命令详解: 

-a

支持多个参数并将每个参数视为NAME

-s

删除尾随的后缀

-z

使用NULL而不是换行符分隔输出

  1. 将后台的工作运行起来bg

bg [jobspec ...]

  1. 由第一行到最后一行连续显示在屏幕上cat

cat [OPTION]... [FILE]...

常用命令详解: 

-b

输出非空行,并以数字显示行数

-E

在每行末尾显示$符号

-n

输出所有行,并以数字显示行数

-s

去掉重复的空行输出一条空行

-T

将TAB字符显示为^I

-v

列出一些看不出来的空白字符

-e

等同于-vE

-A

相当于-vET

-t

等同于-vT

  1. 更改用户密码有效期信息chage

chage [options] [LOGIN]

常用命令详解: 

-d LAST_DAY

设置更改密码的天数。0,用户将在下次登录时更改其密码。

-E EXPIRE_DATE

设置用户帐户失效日期。

-I INACTIVE

设置密码过期后的宽限天数

-l

显示帐户详细信息

-m MIN_DAYS

设置密码最短保留的天数

-M MAX_DAYS

设置密码有效的最大天数。

-W WARN_DAYS

设置需要更改密码之前的警告天数。

  1. 更改系统文件属性chattr

  chattr [-RVf] [-+=aAcCdDeijsStTu] [-v version] files...

 字母'aAcCdDeijsStTu'选择文件的新属性:

仅附加(a),没有atime更新(A),

压缩(c),写入时没有复制(C),

没有转储(d),同步目录更新(D) ),

范围格式(e),

不可变(i),

数据日志(j),

安全删除,同步更新(S),

无尾部合并(t),

目录层次结构顶部(T),

以及不可取消的(u)

常用命令详解: 

-R

递归更改目录及其内容的属性

-V

请使用chattr的输出进行详细说明并打印程序版本

-f

抑制大多数错误消息

-v

设置文件的版本/世代号

+

增加某一个特殊参数,其他原本存在参数则不动

-

删除某一个特殊参数,其他原本存在参数则不动

=

仅有后面接的参数

  1. 修改SElinux的安全上下文chcon

    chcon [OPTION]... CONTEXT FILE...

     chcon [OPTION]... [-u USER] [-r ROLE] [-l RANGE] [-t TYPE] FILE...

     chcon [OPTION]... --reference=RFILE FILE...

常用命令详解:

 --dereference

影响每个符号链接的referent(这是默认值),而不是符号链接本身

-h,

影响符号链接,而不是任何引用的文件

-u

在目标安全上下文中设置用户user

-r

在目标安全上下文中设置角色

-t

在目标安全上下文中设置类型

-l

在目标安全上下文中设置范围

--no-preserve-root

不要特别对待“/”(默认值)

--preserve-root

未能递归操作'/'

--reference=RFILE

使用RFILE的安全上下文,而不是指定上下文值

-R

递归地操作文件和目录

-v

为处理的每个文件输出诊断

  以下选项将修改在指定-R选项时遍历层次结构的方式。如果指定了多个,则只接受最后一个 

-H  

如果命令行参数是到目录的符号链接,遍历它

-L 

遍历每个符号链接到遇到的目录

-P   

不遍历任何符号链接(默认)

  1. 更改finger信息chfn

chfn [-f full-name] [-o office] ,RB [ -p office-phone] [-h home-phone] -u] [-v] [username]

此信息存储在/ etc / passwd文件中,并通过finger程序显示。

-f

指定您的真实姓名。

-o

指定您的办公室房间号

-p

指定您的办公室电话号码。

-h

指定您的家庭电话号码。

  1. finger-用户信息查找程序

finger [-lmsp] [user ...] [user@host ...]

    常用命令详解:

-s  

单行显示

-l  

产生多行格式。

-m  

不对用户名匹配。

   

  1. 更改所有组chgrp

  chgrp [OPTION]... GROUP FILE...

  chgrp [OPTION]... --reference=RFILE FILE...

 常用命令详解:

-c

显示操作结果,仅在进行更改时报告.

--dereference

影响每个符号链接的引用(这是默认值),而不是符号链接本身

-h

影响每个符号链接而不是任何引用的文件(仅在可以更改符号链接的所有权的系统上有用)

-v

为每个处理的文件输出诊断

-R

以递归方式操作文件和目录

 

  1. 管理系统服务默认开机启动与否chkconfig

chkconfig [--list] [--type type] [name]

chkconfig --add name

chkconfig --del name

chkconfig --override name

chkconfig [--level levels] [--type type] [--no-redirect] name <on|off|reset|resetpriorities>

chkconfig [--level levels] [--type type] [--no-redirect] name

  常用命令详解:

--level levels

指定操作应该属于的运行级别。levels它是一串从0到6的数字

--add name

这个选项为chkconfig的管理添加了一个新服务。

--del name

该服务将从chkconfig管理中删除,以及/etc/rc[0-6]中的任何符号链接。

--list name

这个选项列出了chkconfig知道的所有服务,以及它们在每个运行级别中是被停止还是被启动。如果指定了名称,则其中的信息只显示有关服务名称的信息。

 

  1. 更改文件权限chmod

  chmod [OPTION]... MODE[,MODE]... FILE...

  chmod [OPTION]... OCTAL-MODE FILE...

  chmod [OPTION]... --reference=RFILE FILE...

chmod不会更改符号连接的权限,但是会更改指向文件的权限,chmod忽略在递归目录遍历期间遇到的符号连接。

-R

以递归方式操作文件和目录

  1. 更改文件所有者或组或所有者与组chown

       chown [OPTION]... [OWNER][:[GROUP]] FILE...

       chown [OPTION]... --reference=RFILE FILE...

常用命令详解:

-R

以递归方式操作文件和目录

  1. 批量更新密码chpasswd

 chpasswd [options]

 chpasswd命令从标准输入读取用户名和密码对的列表,并使用这些信息更新一组现有用户。每一行的格式如下:    user_name:password

常用命令详解:

-c  METHOD

使用指定的方法加密密码

-e

提供的密码是加密的形式。

-m

当提供的密码未加密时,使用MD5加密代替DES。

-s  ROUNDS

使用指定的轮数加密密码。

  1. chroot-运行命令或具有特殊根目录的交互式shell

       chroot [OPTION] NEWROOT [COMMAND [ARG]...]

       chroot OPTION

 常用命令详解:

--userspec=USER:GROUP

指定要使用的用户和组(ID或名称)

--groups=G_LIST

将补充组指定为g1,g2,..,gN

  1. 更改您的登录外壳chsh

chsh [-s shell] [-l] [-u] [-v] [username]

 常用命令详解:

-s shell

指定您的登录外壳。

-l

打印/etc/shells中列出的shell列表并退出。

  1. 复制、更新CP

cp [OPTION]... [-T] SOURCE DEST

cp [OPTION]... SOURCE... DIRECTORY

cp [OPTION]... -t DIRECTORY SOURCE...

常用命令详解:

-a

复制连接文件属性而非文件本身,递归复制目录,保留指定的属性(默认:模式、所有权、时间戳),如果有可能的话还有其他属性:context,links,xattr,all,连同文件属性一起复制过去

--attributes-only

不复制文件数据,只复制属性

-d

若源文件为连接文件的属性,则复制连接文件属性而非文件本身

-i

覆盖前提示

-H

遵循源文件中的符号连接

-l

硬链接而不是进行复制

-L

始终遵循源文件中符号连接

-n

不要覆盖现有文件

-P

不用管源文件中的符号连接

-p

连同文件的属性一起复制过去,而非使用默认属性(备份常用)

--preserve[=ATTR_LIST]

保留指定的属性(默认:模式,所有权,时间戳),如果可能的话还有其他属性:context,links,xattr,all

--no-preserve=ATTR_LIST

不保留指定的属性

--parents

在目录下使用完整的源文件名

-R

递归复制目录

-s

制作符号连接而不是复制,创建“快捷方式”

-S

覆盖通常的备份后缀

-t,

将所有源文件参数复制到目录中

-u

仅当源文件比目标文件更新或缺少目标文件时才复制

若源文件在两个以上,则最后一个目的文件一定要是“目录”才行

-Z

将目标文件的SElinux安全上下文设置为默认类型

 

  1. 选取字段cut

cut OPTION... [FILE]...

 常用命令详解:

-b

以字节为单位进行分割 ,仅显示行中指定直接范围的内容

-c,

以字符为单位进行分割 , 仅显示行中指定范围的字符

-d

自定义分隔符,默认为制表符”TAB”

-f

显示指定字段的内容,以逗号隔开。依据-d的分隔字符将一段信息切割成数段,用-f取出第几段的意思。

       

  1. crontab-为个别用户维护crontab文件

       crontab [-u user] file

       crontab [-u user] [-l | -r | -e] [-i] [-s]

 常用命令详解:

-u   

附加要调整crontab的用户名。

-l    

当前crontab将显示在标准输出中。

-r

删除,当前的crontab将被删除。

-e   

编辑

-i   

修改

-s  

在编辑/替换之前,它会将当前的SELinux安全上下文字符串作为MLS_LEVEL设置追加到crontab文件中

 

  1. 文件传输工具curl

 curl [options] [URL...]

 常用命令详解:

-O        把输出写到该文件中,保留远程文件的文件名

 -G/--get 以get的方式来发送数据 

 -I/--head  只显示文档信息 

 --interface <interface> 使用指定网络接口/地址 

 -l/--list-only 列出ftp目录下的文件名称 

 --limit-rate <rate> 设置传输速度 

 -n/--netrc 从netrc文件中读取用户名和密码 

 -o/--output 把输出写到该文件中 

 -p/--proxytunnel   使用HTTP代理 

 -s/--silent静音模式。不输出任何东西 

 -S/--show-error   显示错误 

 -T/--upload-file <file> 上传文件 

 --url <URL>     Spet URL to work with 

 -u/--user <user[:password]>设置服务器的用户和密码 

 -U/--proxy-user <user[:password]>设置代理用户名和密码 

 -v/--verbose 

 -x/--proxy <host[:port]>在给定的端口上使用HTTP代理 

 -#/--progress-bar 用进度条显示当前的传送状态 

  1. 打印或设置系统日期和时间date

date [OPTION]... [+FORMAT]

date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

  常用命令详解:

-s

设定时间

-u

打印或设置世界标准时间

FORMAT 控制输出。解释的序列为:

%c

区域设置的日期和时间(例如,2005年3月3日星期四,23:05:25

%d

一个月中的某天(例如01)

%H

小时(00..23)

%m

月(01..12)

%M

分钟(00..59)

%Y

%Z    

字母时区缩写(例如EDT)

  1. 转换并复制文件dd

       dd [OPERAND]...

       dd OPTION

  常用命令详解:

bs=BYTES

一次读取和写入BYTES字节(另请参见ibs =,obs =)

count=N

仅复制N个输入块

ibs=BYTES

一次读取BYTES字节(默认值:512)

if=FILE

从FILE而不是stdin读取

obs=BYTES

一次写入字节字节(默认值:512)

of=FILE

写入文件而不是标准输出

  

  1. 报告文件系统磁盘空间使用情况df

df [OPTION]... [FILE]...

 常用命令详解:

-a

包含虚拟文件系统

--direct

显示文件的统计信息,而不是挂载点

--total

合计

-h

以人类可读格式列印尺寸(例如1K 234M 2G)

-i

列出inode信息而不是块使用情况

--no-sync

获取使用信息之前不要调用sync(默认)

--sync

在获取使用信息之前调用sync

-t

将清单限制为类型的文件系统

-T

打印文件系统类型

-x

将清单限制为非类型的文件系统

 

  1. 逐行比较文件diff

diff [OPTION]... FILES

 常用命令详解:

-i 

忽略文件内容中的大小写差异。

--ignore-file-name-case

比较文件名时忽略大小写。

--no-ignore-file-name-case

在比较文件名时考虑大小写。

-E 

忽略由于制表符展开而引起的更改。

-b 

忽略空白数量的变化。

-w 

忽略所有空白。

-B 

忽略所有行都为空的更改。

  1. 查看系统硬件dmidecode

dmidecode [OPTIONS]

常用命令详解:

 -d FILE     从设备文件中读取内存(默认:/dev/mem)

 -q           更详细的输出

DMI TYPES:

   Type   Information

   ────────────────────────────────────────────

      0   BIOS

      1   System

      2   Baseboard

      3   Chassis

      4   Processor

      5   Memory Controller

      6   Memory Module

      7   Cache

      8   Port Connector

      9   System Slots

     10   On Board Devices

     11   OEM Strings

     12   System Configuration Options

     13   BIOS Language

     14   Group Associations

     15   System Event Log

     16   Physical Memory Array

     17   Memory Device

     18   32-bit Memory Error

     19   Memory Array Mapped Address

     20   Memory Device Mapped Address

     21   Built-in Pointing Device

     22   Portable Battery

     23   System Reset

     24   Hardware Security

     25   System Power Controls

     26   Voltage Probe

     27   Cooling Device

     28   Temperature Probe

     29   Electrical Current Probe

     30   Out-of-band Remote Access

     31   Boot Integrity Services

     32   System Boot

     33   64-bit Memory Error

     34   Management Device

     35   Management Device Component

     36   Management Device Threshold Data

     37   Memory Channel

     38   IPMI Device

     39   Power Supply

     40   Additional Information

     41   Onboard Devices Extended Information

     42   Management Controller Host Interface

  1. 估计文件空间使用量du

 du [OPTION]... [FILE]...

  du [OPTION]... --files0-from=F

   常用命令详解:

-a

写所有文件的计数,而不仅仅是目录

-c

产生总计

-h

以人类可读的格式打印尺寸(例如1K 234M 2G)

-l

如果硬链接,则多次计算大小

-L

取消引用所有符号链接

-P

不要点击任何符号链接(这是默认设置)

-S

不包括子目录的大小,

-s

每个参数仅显示总计,列出总量,而不列出每个各别的目录占用容量

  1. 列出目前的shell环境的所有环境变量与其内容env

env [OPTION]... [-] [NAME=VALUE]... [COMMAND [ARG]...]

  常用命令详解:

-i

开始一个新的空的环境/初始化环境变量

-u

从环境中删除变量

 

  1. 查询或控制网络驱动程序和硬件设置ethtool

    ethtool devname

   man ethtool

 常用命令详解:

autoneg on|off

指定是否应该启用暂停自动协商。

rx on|off

指定是否应该启用RX暂停。

tx on|off

指定是否应该启用TX暂停。

  1. exec-用给定的命令替换shell。

exec [-cl] [-a name] [command [arguments ...]] [redirection ...]

  常用命令详解:

-a name  

将NAME作为第0个参数传递给COMMAND

-c  

在空环境中执行COMMAND

-l       

在COMMAND的第0个参数中放置一个破折号

  1. 系统设置export

export [-fn] [name[=value] ...]

export -p

 常用命令详解:

-f        代表[变量名称]中为函数名称

-n        删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中

-p        列出所有的shell赋予程序的环境变量

 

  1. linux分区表操作器fdisk

没有办法处理大于2TB以上的磁盘分区。

       fdisk [-uc] [-b sectorsize] [-C cyls] [-H heads] [-S sects] device

       fdisk -l [-u] [device...]

       fdisk -s partition...

       fdisk -v

       fdisk -h

 常用命令详解:

-b sectorsize

指定磁盘的扇区大小。

-l    

列出指定设备的分区表

Command (m for help): m

Command action

   a   toggle a bootable flag           <==============切换可启动标志

   b   edit bsd disklabel               <==============编辑bsd disklabel

   c   toggle the dos compatibility flag <=============切换dos兼容性标志

   d   delete a partition                <=============删除分区

   l   list known partition types        <=============列出已知的分区类型

   m   print this menu                   <=============打印此菜单

   n   add a new partition               <=============添加一个新分区

   o   create a new empty DOS partition table <========创建一个新的空DOS分区表

   p   print the partition table         <=============打印分区表

   q   quit without saving changes       <=============退出而不保存更改

   s   create a new empty Sun disklabel  <=============创建一个新的空Sun disklabel

   t   change a partition's system id    <=============更改分区的系统ID

   u   change display/entry units        <=============更改显示/输入单位

   v   verify the partition table        <=============验证分区表

   w   write table to disk and exit      <=============将表写入磁盘并退出

   x   extra functionality (experts only) <============额外的功能(仅限专家)

Command (m for help): p

 

Disk /dev/sda: 21.5 GB, 21474836480 bytes  <============这个磁盘的文件名与容量

255 heads, 63 sectors/track, 2610 cylinders <============磁头、扇区与柱面大小

Units = cylinders of 16065 * 512 = 8225280 bytes <============每个柱面的大小

  1. 调用后台到前台fg

fg [jobspec]

  1. 确定文件类型file

 file [-bchiklLNnprsvz0] [--apple] [--mime-encoding] [--mime-type] [-e testname] [-F separator] [-f namefile] [-m magicfiles] file ...

 file -C [-m magicfiles]

 file [--help]

常用命令详解: 

-b

只显示文件类型

-z

尝试查看压缩文件

  1. 搜索目录层次结构中的文件find

find [-H] [-L] [-P] [-D help|tree|search|stat|rates|opt|exec] [-Olevel] [path...] [expression]

常用命令详解: 

-P

切勿遵循符号链接。这是默认行为。当find查看或打印文件信息,并且文件是符号链接时,所使用的信息应取自符号链接本身的属性。

-L   

遵循符号链接。查看的是文件属性

 expression(表达式)

-amin n

文件最后一次访问是在n分钟前。

-anewer file

最近一次访问文件比修改文件更新。

-atime n

文件最后一次访问n * 24小时前。

-cmin n

文件的状态最后一次在n分钟前更改过。

-cnewer file

最近更改了文件的状态,而不是修改了文件。

-ctime n

文件的状态最后一次更改n * 24小时前。

-empty

文件为空,是常规文件或目录。

-executable

匹配可执行文件和可搜索的目录。

-fstype type

文件位于类型为type的文件系统上。

-gid n

用户组名的ID,即GID,这个GID记录在/etc/group中

-group gname

文件属于组gname(允许使用数字组ID)。

-mmin n

文件的数据最后一次修改是在n分钟之前。

-mtime n

文件的数据最后修改时间为n * 24小时前。

-name pattern

文件名的基础(删除了前导目录的路径)与shell模式模式匹配。

-newer file

文件比文件更新。

-nogroup

没有组对应于文件的数字组ID。

-nouser

没有用户对应文件的数字用户ID。

-perm mode

文件的权限位完全模式。

-perm -mode

查找文件权限数字模式

-perm /mode

为文件设置任何权限位模式。

-readable

匹配可读的文件。

-regex pattern

文件名与正则表达式模式匹配。

-size n[cwbkMG]

文件使用n个空格单位。 可以使用以下后缀:

  ‘b’表示512字节块(如果没有使用后缀,这是默认值)

  ‘c’    表示字节

   ‘w’    对于双字节单词

    K字节(1024字节单位)

    M’   表示兆字节(单位为1048576字节)

    G’   为千兆字节(单位1073741824字节)

-type c

文件类型为c:

    b   块(缓冲)特殊

    c   字符(无缓冲)特殊

    d   目录

    p   命名管道(FIFO)

    f   常规文件

l   象征性的联系;

       s   socket

    D   door(Solaris)

-uid n

文件的数字用户ID是n。UID记录在/etc/passwd里面与账户名称对应的数字

-used n

文件是在上次更改状态后的第二天访问的。

-user uname

文件由用户uname拥有(允许使用数字用户ID)。

-writable

匹配可写的文件。

  1. 显示系统中的可用和已用内存量free

  free [-b | -k | -m | -g | -h] [-o] [-s delay ] [-c count ] [-a] [-t] [-l] [-V]

 常用命令详解:  / proc / meminfo--内存信息

-h 

以容易阅读的方式显示所有输出字段。

-l

显示详细的低内存和高内存统计信息。

  1. 检查和修复文件系统fsck

fsck [-sAVRTMNP] [-C [fd]] [-t fstype] [filesys...]  [--] [fs-specific-options]

  常用命令详解:

-s  

序列化fsck操作。

-A 

遍历/etc/fstab文件,并尝试在一次运行中检查所有文件系统。

-M    

不要检查已挂载的文件系统,并为已挂载的文件系统返回0退出码。

-R   

当使用-A标志检查所有文件系统时,跳过根文件系统(以防它已经挂载了read-write)。

-V    

生成详细的输出,包括执行的所有文件系统特定的命令。

-t fslist

指定要检查的文件系统的类型。当指定-A标志时,只选中匹配fslist的文件系统。

  1. 通过文件(或文件系统)找出正在使用该文件的程序fuser

       fuser [-a|-s|-c] [-4|-6] [-n  space ] [-k [-i] [-signal ] ] [-muvf] name ...

       fuser -l

       fuser -V

 常用命令详解:

-a    

显示命令行上指定的所有文件。

-k   

杀死访问文件的进程。

-i   

在终止一个进程之前要求用户确认。如果没有-k,此选项将被忽略.

-l    

列出所有已知信号名称

-m  NAME

name指定挂载的文件系统上的文件或挂载的块设备。列出了访问该文件系统上文件的所有进程。

-n space

选择不同的名称空间。支持名称空间文件(文件名,默认)、udp(本地udp端口)和tcp(本地tcp端口)。对于端口,可以指定端口号或符号名。

-u   

将进程所有者的用户名附加到每个PID。

-v   

详细模式。

-4   

只搜索IPv4套接字。

-6    

搜索IPv6套接字。

 

  1. 显示SElinux模式getenforce

getenforce

  1. 三剑客二:全面搜索正则表达式,并将其打印出来grep

       grep [OPTIONS] PATTERN [FILE...]

       grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]

 常用命令详解:

匹配器选择

-E

将模式解释为 扩展的正则表达式。

-F

将模式解释为 固定字符串列表,其中任何一个都将被匹配。

-G

将模式解释为基本正则表达式。 这是默认值。

-P

将模式解释为Perl正则表达式。

匹配控制

-e PATTERN

指定字符串做为查找文件内容的样式.使用模式作为图样。

-f FILE

查找符合规则条件的文件内容

-i

忽略模式和输入文件中的大小写区别。

-v

选择不匹配的行。

-w

仅选择包含构成整个单词的匹配项的行。

-x

仅选择与整行完全匹配的那些匹配项。

通用输出控制

-c

计算符合样式的行数。

-l

列出匹配模式的文件名称,

-o

仅打印匹配行的匹配(非空)部分

输出线前缀控制

-n

列出所有的匹配行,显示行号

上下文线控制

-A NUM

匹配行后打印NUM行尾随上下文。

-B NUM

在匹配行之前打印前导上下文的NUM行。

-C NUM

打印NUM行输出上下文。

文件和目录选择

-r

递归搜索

-R

递归读取每个目录下的所有文件。

 

  1. groupadd-创建一个新的组

groupadd [options] group

 常用命令详解:

-g GID

配置组ID。非负的。默认值是使用大于999

-o

此选项允许添加具有非唯一GID的组。

-r

创建一个系统组

 

  1. 删除组groupdel

groupdel [options] GROUP

 

  1. 修改系统上的组定义groupmod

 groupmod [options] GROUP

  常用命令详解:

-g GID

 更改GID。

-n NEW_GROUP

更改组名称

-o

允许将组GID更改为非唯一值。

  1. 打印用户所在的组groups

groups [OPTION]... [USERNAME]...

  1. 压缩或扩展文件gzip,gunzip,zcat

gzip可以解开compress、zip、gzip等软件压缩的文件,gzip所新建的压缩文件为*.gz的文件名。gzip压缩后,原文件不再存在,压缩比为60%~70%.

压缩:

       gzip [ -acdfhlLnNrtvV19 ] [-S suffix] [--rsyncable] [ name ...  ]

       gunzip [ -acfhlLnNrtvV ] [-S suffix] [ name ...  ]

解压缩:

zcat (将文件内容读取输出到屏幕上)

       zcat [ -fhLV ] [ name ...  ]

       gzip -d name

 常用命令详解:

-d

解压缩

-f

强制进行压缩或解压缩

-l

列出压缩文件信息

-n

压缩时不要保存原始文件名和时间戳。

解压缩时,不还原原始文件名和时间戳。解压缩时,此选项是默认选项。

-N

压缩时,请务必保存原始文件名和时间戳。这是默认值。

解压缩时,请还原原始文件名和时间戳。

-r

递归地移动目录结构

-v

输出详细信息

  1. 输出文件的第一部分head

head [OPTION]... [FILE]...

默认显示10行。

常用命令详解:

-c K

打印每个文件的前K个字节

-n m

打印前m行

-q

从不打印文件名

-v

总是打印文件名

 

  1. 查看历史history

 history [n]

       history -c

       history -d offset

       history -anrw [filename]

       history -p arg [arg ...]

       history -s arg [arg ...]

默认显示1000行。

常用命令详解:

-c

通过删除所有条目来清除历史记录列表。

-d offset

删除历史命令列表中指定序号的命令

-a   

将“新”历史记录行(自当前bash会话开始以来输入的历史记录行)添加到历史记录文件中。

-n    

将尚未从历史文件读取的历史行读入当前历史列表。这些是自当前bash会话开始以来附加到历史文件的行。

-r   

读取历史记录文件的内容,并将其用作当前历史记录。

-w    

将当前历史记录写入历史记录文件,覆盖历史记录文件的内容。

-p    

在以下args上执行历史记录替换,并在标准输出上显示结果。不将结果存储在历史记录列表中。必须对每个arg报价以禁用常规历史记录扩展。

-s    

将args作为单个条目存储在历史记录列表中。在添加参数之前,将删除历史记录列表中的最后一个命令。

  1. 显示或设置系统的主机名hostname 

显示或设置系统的NIS/YP域名domainname

显示或设置系统的NIS/YP域名ypdomainname

显示或设置系统的NIS/YP域名nisdomainname

显示系统的DNS域名dnsdomainname 

hostname  [-a|--alias]  [-d|--domain] [-f|--fqdn|--long] [-A|--all-fqdns] [-i|--ip-address] [-I|--all-ip-addresses] [-s|--short] [-y|--yp|--nis]

       hostname [-b|--boot] [-F|--file filename] [hostname]

       hostname [-h|--help] [-V|--version]

       domainname [nisdomain] [-F file]

       ypdomainname [nisdomain] [-F file]

       nisdomainname [nisdomain] [-F file]

       dnsdomainname

 常用命令详解:

-a

显示主机的别名

-d

显示DNS域的名称

 -F filename

从指定的文件中读取主机名。注释(以' # '开头的行)将被忽略。

-f

显示FQDN(完全限定域名)。

-A

显示机器的所有FQDNs。

-i

显示主机的IP地址。

-I

显示主机的所有网络地址。

-s

显示短主机名。这是在第一个点处剪切的主机名。

-v

显示详细信息

-y

显示NIS域名。

  1. hwclock-查询并设置硬件时钟(RTC)

hwclock [functions] [options]

 functions详解:

-r

读取硬件时钟并在标准输出上打印时间。

--set

将硬件时钟设置为--date选项指定的时间。

-s

从硬件时钟设置系统时间。

-w

将硬件时钟设置为当前系统时间。

--systz

设置内核的时区,并根据当前时区重置系统时间。

--adjust

增加或减少硬件时钟的时间

--getepoch

将内核的硬件时钟时间值打印到标准输出。

--setepoch

将内核的硬件时钟时间值设置为--epoch选项指定的值。

--date=date_string

如果指定--set选项,则需要此选项。

--epoch=year

指定硬件时钟纪元开始的年份。

 

  1. id-打印真实有效的用户和组id

id [OPTION]... [USERNAME]

   常用命令详解:

-Z

只打印当前用户的安全上下文

-g

只打印有效的组ID

-G

打印所有组id

-u

只打印有效的用户ID

  1. 显示或配置网络设备(网络接口卡) 或修改ifconfig

       ifconfig [-v] [-a] [-s] [interface]

       ifconfig [-v] interface [aftype] options | address ...

常用命令详解:

interface

接口的名称。

up 

启动该端口

down  

此标志导致关闭此接口的驱动程序。

[-]arp

在此接口上启用或禁用ARP协议的使用。

[-]promisc

启用或禁用接口的混杂模式。

[-]allmulti

启用或禁用全组播模式。

metric N

此参数设置接口度量。

mtu N

此参数设置接口的最大传输单元(MTU)。

dstaddr addr

为点对点链接(例如PPP)设置远程IP地址。

netmask addr

为这个接口设置IP网络掩码。

media type

设置设备使用的物理端口或介质类型。

[-]broadcast [addr]

设置协议广播地址。

[-]pointopoint [addr]

点对点连接

hw class address

设置此接口的硬件地址。

Multicast

在接口上设置多播标志

Address

要分配给这个接口的IP地址。

txqueuelen length

设置设备传输队列的长度。

  1. 阅读信息文档info

 info [OPTION]... [MENU-ITEM...]

  1. iptables-管理工具的IPv4包过滤和NAT

       iptables [-t table] {-A|-C|-D} chain rule-specification

       ip6tables [-t table] {-A|-C|-D} chain rule-specification

       iptables [-t table] -I chain [rulenum] rule-specification

       iptables [-t table] -R chain rulenum rule-specification

       iptables [-t table] -D chain rulenum

       iptables [-t table] -S [chain [rulenum]]

       iptables [-t table] {-F|-L|-Z} [chain [rulenum]] [options...]

       iptables [-t table] -N chain

       iptables [-t table] -X [chain]

       iptables [-t table] -P chain target

       iptables [-t table] -E old-chain-name new-chain-name

       rule-specification = [matches...] [target]

       match = -m matchname [per-match-options]

       target = -j targetname [per-target-options]

TARGETS:

ACCEPT 表示让这个包通过。

DROP 表示将这个包丢弃。

QUEUE 表示把这个包传递到用户空间。

RETURN 表示停止这条链的匹配,到前一个链的规则重新开始。如果到达了一个内建的链(的末端),或者遇到内建链的规则是 RETURN,包的命运将由链准则指定的目标决定。

 

TABLES

       filter ,这是默认的表,包含了内建的链INPUT(处理进入的包)、FORWORD(处理通过的包)和OUTPUT(处理本地生成的包)。

        nat    这个表被查询时表示遇到了产生新的连接的包,由三个内建的链构成:PREROUTING  (修改到来的包)、OUTPUT(修改路由之前本地的包)、POSTROUTING修改准备出去的包)。

        mangle  这个表用来对指定的包进行修改。它有两个内建规则:PREROUTING(修改路由之  前进入的包)和OUTPUT(修改路由之前本地的包)。

 -A  chain rule-specification

在所选择的链末添加一条或更多规则。

-D chain rule-specification

-D chain rulenum

从所选链中删除一条或更多规则。

-I chain [rulenum] rule-specification

 根据给出的规则序号向所选链中插入一条或更多规则。

-R chain rulenum rule-specification

从选中的链中取代一条规则。

-L  [chain]

显示所选链的所有规则。

-S [chain]

打印所选链中的所有规则。

-F [chain]

清空所选链。

-Z [chain [rulenum]]

把所有链的包及字节的计数器清空。

-N chain

根据给出的名称建立一个新的用户定义链。

-X  [chain]

删除指定的用户自定义链。

-P  chain target

设置链的目标规则。

-E  old-chain new-chain

对指定链进行重命名

 参数成规则详述

[!] -p, --protocol protocol

规则或者包检查(待检查包)的协议。指定协议可以是tcp、udp、icmp中的一个或者全部,也可以是数值,代表这些协议中的某一个。当然也 可 以 使 用 在/etc/protocols中定义的协议名。在协议名前加上"!"表示相反的规则。数字0相当于所有 all。Protocol all会匹配所有协议,而且这是缺省时的选项。在和check命令结合时all可以不被使用。

[!] -s, --source address[/mask][,...]

指定源地址,可以是主机名、网络名和清楚的IP地址。

[!] -d, --destination address[/mask][,...]

 指定目标地址

-j, --jump target

指定规则的目标;也就是说,如果包匹配应当做什么ACCEPT、DROP、REJECT、LOG(记录)

-g, --goto chain

这指定处理应该在用户指定的链中继续进行。

[!] -i, --in-interface name

 这是包经由该接口接收的可选的入口名称,包通过该接口接收(在链INPUT、FORWORD和PREROUTING中进入的包)。当在接口名前  使用"!"说明后,指的是相反的名称。如果接口名后面加上"+",则所有以此接口名开头的接口都会被匹配。如果这个选项被忽略,会假设为"+",那么将匹配任意接口。

[!] -o, --out-interface name

 这是包经由该接口送出的可选的出口名称,包通过该口输出(在链FORWARD、OUTPUT和POSTROUTING中送出的包)。当在接口名前使用"!"说 明后,指的是相反的名称。如果接口名后面加上"+",则所有以此接口名开头的接口都会被匹配。如果这个选项被忽略,会假设为"+",那么将匹配所有任意接口。

[!] -f, --fragment

 这意味着在分片的包中,规则只询问第二及以后的片。自那以后由于无法判断这种把包的源端口或目标端口(或者是ICMP类型的),这类包将不能 匹配任何指定对他们进行匹配的规则。如果"!"说明用在了"-f"标志之前,表示相反的意思。

 -c, --set-counters packets bytes

这使管理员能够初始化规则的包和字节计数器(在插入、追加、替换操作期间)。

  

  1. iptables-save将iptables规则转储到stdout

       iptables-save [-M,--modprobe modprobe] [-c] [-t table]

       ip6tables-save [-M,--modprobe modprobe] [-c] [-t table]

常用命令详解:

-M modprobe_program

指定modprobe程序的路径。默认情况下,iptables-save将检查/proc/sys/内核/modprobe以确定可执行文件的路径。

-c, --counters

在输出中包括所有数据包和字节计数器的当前值

-t, --table tablename

限制输出仅为一个表。如果没有指定,则输出包括所有可用的表。

 

  1. 显示/操作路由、设备、策略路由和隧道ip

ip [ OPTIONS ] OBJECT { COMMAND | help }

ip [ -force ] -batch filename

 OBJECT := { link | address | addrlabel | route | rule | neigh | ntable | tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm | netns | l2tp | tcp_metrics | token | macsec }

OPTIONS := { -V[ersion] | -h[uman-readable] | -s[tatistics] | -d[etails] | -r[esolve] | -iec | -f[amily] { inet | inet6 | ipx |dnet | link } | -4 | -6 | -I | -D | -B | -0 | -l[oops] { maximum-addr-flush-attempts } | -o[neline] | -rc[vbuf] [size] |               -t[imestamp] | -ts[hort] | -n[etns] name | -a[ll] | -c[olor] }

optins

-s

输出更多的信息。

-4    

IPV4

-6   

IPV6

-r

使用系统的名称解析器打印DNS名称,而不是主机地址。

   OBJECT

link

网络设备

address

设备上的协议(IP或IPv6)地址。

addrlabel

协议地址选择的标签配置。

neighbour

ARP或NDISC高速缓存条目。

route

路由表条目。

rule 

路由策略数据库中的规则。

maddress

多播地址

mroute

多播路由缓存条目。

tunnel

通过IP的隧道。

xfrm

IPsec协议框架。

 

  1. 查看目前后台工作jobs

 jobs [-lnprs] [ jobspec ... ]

 jobs -x command [ args ... ]

常用命令详解:

-l

列出正常信息之外的进程id

-p 

只列出作业的流程组长的流程ID。

-n

仅显示自上次通知用户其状态以来已更改状态的作业的信息。

-r

将输出限制为运行作业。

-s    

将输出限制为停止的作业。   

  1. 将两个文件的行连接到一个公共字段join

join [OPTION]... FILE1 FILE2

常用命令详解:

-a FILENUM

打印来自文件FILENUM的不可配对的行,其中FILENUM为1或2,对应于FILE1或FILE2

-e EMPTY

用EMPTY替换缺少的输入字段

-i

比较字段时忽略差异

-j FIELD

相当于“ -1 FIELD -2 FIELD”

-o FORMAT

构造输出线时要遵守FORMAT

-t CHAR

使用CHAR作为输入和输出字段分隔符

-v FILENUM

类似于-a FILENUM,但是取消连接的输出行

-1 FIELD

加入文件1的这个FIELD

-2 FIELD

加入文件2的这个FIELD

--check-order

即使所有输入行都可以配对,也请检查输入是否正确排序

--nocheck-order

不要检查输入是否正确排序

   

  1. 按名称杀死进程killall

  killall [-Z,--context pattern] [-e,--exact] [-g,--process-group] [-i,--interactive] [-q,--quiet] [-r,--regexp] [-s,--signal signal] [-u,--user user] [-v,--verbose] [-w,--wait] [-I,--ignore-case] [-V,--version] [--] name ...

       killall -l

       killall -V,--version

 常用命令详解:

-e

要求对非常长的名称进行精确匹配。

-I

执行不区分大小写的进程名称匹配。

-g

终止该进程所属的进程组。

-i

在杀戮前交互式地请求确认。

-l

列出所有已知信号名称。

-r

将进程名称模式解释为扩展的正则表达式

-u

只杀死指定用户拥有的进程。命令名是可选的

-w

等待所有已杀死的进程终止。

  

  1. 显示最近登录用户的列表last

last [-R] [-num] [ -n num ] [-adFiowx] [ -f file ] [ -t YYYYMMDDHHMMSS ] [name...]  [tty...]

lastb [-R] [-num] [ -n num ] [ -f file ] [-adFiowx] [name...]  [tty...]

常用命令详解:

-t YYYYMMDDHHMMSS

显示指定时间的登录状态。

-f file

指定要搜索的文件,而不是/var/log/wtmp.

-a 

在最后一列中显示主机名。

-d  

将IP号码转换回主机名

-F 

打印完整的登录和注销时间和日期

-i

显示远程主机的IP号码,但以数字和点表示法显示IP号码。

-w

在输出中显示完整的用户名和域名。

-x

显示系统关闭条目和运行级别更改。

 

  1. 查看文件less

空格键

向下翻动一页

pgdn

向下翻动一页

pgup

向上翻动一页

/字符串

向下查询“字符串”功能

?字符串

向上查询"字符串"功能

n

重复前一个查询(与/或?有关)

N

反向重复前一个查询(与/或?有关)

q

离开less这个程序

  1. 在文件之间建立链接ln

       ln [OPTION]... [-T] TARGET LINK_NAME   (1st form)

       ln [OPTION]... TARGET                  (2nd form)

       ln [OPTION]... TARGET... DIRECTORY     (3rd form)

       ln [OPTION]... -t DIRECTORY TARGET...  (4th form)

常用命令详解:

--backup[=CONTROL]

对每个现有目标文件进行备份

-d

允许超级用户尝试硬链接目录

-f

删除现有的目标文件

-i

提示是否删除目的地

-L

硬链接到符号链接引用

-n

将作为目录符号链接的目标视为正常文件

-P

将硬链接直接链接到符号链接

-s

进行符号链接而不是硬链接

-T

将LINK_NAME视为普通文件

  1. 按名称查找文件locate

locate [OPTION]... PATTERN...

    locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locatedb。

-b

仅将基本名称与指定的模式匹配。这与-w相反。

-c

不是在标准输出上写入文件名,而是仅写入匹配条目的数量。

-e

仅打印引用定位时存在的文件的条目。

-i

匹配模式时忽略大小写区别。

-w

  仅匹配指定模式的整个路径名称。

  1. 显示文件的文件名和相关属性;列出目录内容ls

ls [option] [file]

常用命令详解: 

-a

显示所有包括.和..

-A

显示所有,但不包括.和..

--author

显示作者

-c

同lt一起使用,以文件的最后修改时间显示;

同l一起使用,以文件的最后修改时间显示并按名称排序

-C

按列列出条目

-d

列出目录条目而不是内容,并且不要取消引用符号链接

-F

在每一个文件的末尾加上一个字符说明该文件的类型。"@"表示符号链接、"|"表示FIFOS、"/"表示目录、"="表示套接字。

-G

不打印用户组

-h

同l一起使用,人类可读方式(e.g., 1K 234M 2G)

--si 

除以1000显示

-i

打印每个文件的索引号

-l

列表格式显示

-L

显示连接引用的文件信息,而不是连接

-m  

以逗号分隔的条目列表

-n

与相似,但列出数字用户和组ID

-N

打印原始条目名称

-o

与l相似,但是不列出组信息,列表格式显示

-r

排序时的逆序

-R

以递归方式列出子目录

-s

以块为单位打印每个文件的分配大小

-S

按文件大小排序

-t  

按修改时间排序

-u   

with -lt:排序和显示访问时间

with -l:显示访问时间并按名称排序:按访问时间排序

-U 

我不排序;按目录顺序列出条目

-v  

文本中的自然类型(版本)数字

-x 

按行而不是按列列出条目

-X

按条目扩展名按字母顺序排序

-1

每行列出一个文件

--color=never

不要依据文件特性给予颜色显示

--color=always

显示颜色

--color=auto

让系统自行依据设置来判断是否给予颜色

-Z

显示安全上下文

--scontext

仅显示安全上下文和文件名。

 

  1. 显示文件隐藏属性lsattr

lsattr [ -RVadv ] [ files...  ]

  常用命令详解:

-R

递归列出目录及其内容的属性。

-a

列出目录中的所有文件,包括隐藏文件

-d

如果接的时目录,仅列出目录本身的属性而非目录内的文件名

-v

列出文件的版本/世代号

 

  1. 列出所有可用块设备的信息lsblk

lsblk [-dfimpt] [device]

选项与参数:

-d :仅列出磁盘本身,并不会列出该磁盘的分区数据

-f :同时列出该磁盘内的文件系统名称

-i :使用 ASCII 的线段输出,不要使用复杂的编码 (再某些环境下很有用)

-m :同时输出该设备在 /dev 下面的权限数据 (rwx 的数据)

-p :列出该设备的完整文件名!而不是仅列出最后的名字而已。

-t :列出该磁盘设备的详细数据,包括磁盘伫列机制、预读写的数据量大小等

  1. 显示已载入系统的模块lsmood
  2. 显示当前设备的总线

lspci [参数]

常用参数:

-n        以数字方式显示PCI厂商和设备代码

-t        以树状结构显示PCI设备的层次关系

-b        以总线为中心的视图

-s        仅显示指定总线插槽的设备和功能块信息

-i        指定PCI编号列表文件,不使用默认文件

-m        以机器可读方式显示PCI设备信息

-v        显示更多PCI接口设备的详细信息

-vv     比V还详细

  1. 列出scsi/sata设备信息lsscsi

 -s : 显示容量大小。

 -c : 用全称显示默认的信息。

 -d : 显示设备主,次设备号。

 -g : 显示对应的sg设备名。

 -H : 显示主机控制器列表,-Hl,-Hlv。

 -l : 显示相关属性,-ll,-lll=-L。

 -v : 显示设备属性所在目录。

 -x : 以16进制显示lun号。

 -p : 输出DIF,DIX 保护类型。

 -P : 输出有效的保护模式信息。

 -i : 显示udev相关的属性

 -w : 显示WWN

  1. 显示逻辑卷的属性lvdisplay

lvdisplay  [-a|--all]  [-c|--colon] [--commandprofile ProfileName] [-d|--debug] [-h|-?|--help]

[--ignorelockingfailure] [--ignoreskippedcluster][--maps] [--nosuffix] [-P|--partial] [-S|--select Selection]  [--units  hHbBsSkKmMgGtTpPeE]  [-v|--verbose]  [--version]  [VolumeGroupName|Logi-calVolume{Name|Path} ...]

 

lvdisplay  -C|--columns  [--aligned]  [--binary]  [-a|--all] [--commandprofile ProfileName] [-d|--debug] [-h|-?|--help] [--ignorelockingfailure][--ignoreskippedcluster] [--noheadings] [--nosuffix] [-o|--options [+]Field[,Field...]]   [-O|--sort  [+|-]Key1[,[+|-]Key2...]]   [-P|--partial] [--segments] 

[-S|--select  Selection]  [--separator  Separator]  [--unbuffered]  [--units  hHbBsSkKmMgGtTpPeE] [-v|--verbose] [--version] [Vol-umeGroupName|LogicalVolume{Name|Path} ...]

  常用命令详解:

--all 

在输出中包含关于内部逻辑卷的信息

-C

以列显示输出

-c

生成冒号分隔的输出,The values are:

·逻辑卷名

·卷组名称

·逻辑卷访问

·逻辑卷状态

·内部逻辑卷号

·逻辑卷的打开计数

·扇区逻辑卷大小

·与逻辑卷关联的当前逻辑区段

·分配逻辑卷的逻辑区段

·逻辑卷的分配策略

·提前读取逻辑卷扇区

·逻辑卷的主设备号

·逻辑卷的次要设备号

-m

显示逻辑区段到物理卷和物理区段的映射。

  1.  制作目录mkdir 

mkdir [OPTION]... DIRECTORY...

 常用命令详解:

-m

创建并设置文件权限,使用数字

-p

创建多层目录

-v

为每个创建的目录打印一条消息

-Z

将每个创建的目录的SELinux安全上下文设置为默认类型

 

  1. 查看文件more

more [options] file [...]

  常用命令详解:  

-number

指定整数,每次以多少行显示

+number

从第几行开始

  1. 挂载文件系统mount

mount [-lhV]

mount -a [-fFnrsvw] [-t vfstype] [-O optlist]

mount [-fnrsvw] [-o option[,option]...]  device|dir

mount [-fnrsvw] [-t vfstype] [-o options] device dir

  常用命令详解:     

-a

挂载fstab中提到的所有文件系统(给定类型)

-l    

输出列表,在输出中添加标签。

-n

挂载而不用写在/etc/mtab中。

-s   

忽略文件系统类型不支持的安装选项。

-r

挂载文件系统为只读。

-w

挂载文件系统读/写。这是默认值。

-L label

挂载具有指定标签的分区。

-U uuid

挂载具有指定uuid的分区。这两个选项要求文件/proc/partitions存在。

-t

-t之后的参数用于指示文件系统类型。 

-o

后面可以接一些挂载时额外加上的参数,比方说账户、密码、读写权限等:

ro,rw :挂载文件系统成为只读(ro)或可读写(rw)

async,sync:此文件系统是否使用同步写入(sync)或异步(async)的内存机制;请参考文件系统运行方式,默认为async

auto,noauto:允许此分区被以mount -a 自动挂载(auto)

dev,nodev:是否允许此分区上可创建设备文件?dev为允许

sudi,nosuid:是否允许此分区含有suid/sgid的文件格式?

exec,noexec:是否允许此分区上拥有可执行binary文件?

user,nouser:是否允许此分区让任何用户执行mount?一般来说,mount仅有root可以进行,但下达user参数,则可让一般user也能够对此分区进行Mount.

defaults:默认值为rw,suid,dev,exec,auto,nouser,and async

remount:重新挂载,这在系统出错,或重新更新参数时,很有用。

 

  1.  移动(重命名)文件,更新文件 mv 

       mv [OPTION]... [-T] SOURCE DEST

       mv [OPTION]... SOURCE... DIRECTORY

       mv [OPTION]... -t DIRECTORY SOURCE...

  常用命令详解:     

--backup[=CONTROL]

备份每个现有目标文件

-f, --force

覆盖之前不要提示

-i, --interactive

覆盖前提示

-n, --no-clobber

不要覆盖现有文件

-u

仅当源文件比目标文件更新或缺少目标文件时才移动

  1. nl文件的行数

nl [OPTION]... [FILE]...

  1. 更新用户的身份验证令牌passwd

passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S][--stdin] [username]

常用命令详解:  

-k    

选项-k用于指示更新仅适用于过期的身份验证令牌(密码);

-l    

此选项用于锁定指定的帐户

--stdin

此选项用于指示passwd应该从标准输入(可以是管道)中读取新密码。

-u   

这与-l选项相反-它会通过删除!来解锁帐户密码。

-d   

这是删除帐户密码的快速方法

-e    

 在下一次尝试登录时,将迫使用户更改密码。 

-n   

设置最短密码有效期(以天为单位)。

-x   

设置最长密码有效期(以天为单位)

-w    

密码将过期的警告的天数。

  1. 显示进程树pstree

pstree [-a] [-c] [-h|-Hpid] [-l] [-n] [-p] [-u] [-Z] [-A|-G|-U] [pid|user]

pstree -V

常用命令详解:  

-a   

显示命令行参数。

-n  

按PID而不是按名称对具有相同祖先的进程进行排序。(数字排序。)

-p  

显示pid。

  1. 报告当前进程快照ps

ps [options]

$ ps -ef

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

USER: 行程拥有者

PID: pid

%CPU: 占用的 CPU 使用率

%MEM: 占用的内存使用率

VSZ: 占用的虚拟内存大小

RSS: 占用的内存大小

TTY: 终端的次要装置号码 (minor device number of tty)

STAT: 该行程的状态:

D: 无法中断的休眠状态 (通常 IO 的进程)

R: 正在执行中

S: 静止状态

T: 暂停执行

Z: 不存在但暂时无法消除

W: 没有足够的记忆体分页可分配

<: 高优先序的行程

N: 低优先序的行程

L: 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O)

START: 行程开始时间

TIME: 执行的时间

COMMAND:所执行的指令

  1. 显示物理卷的属性pvdisplay

pvdisplay  [-c|--colon]  [--commandprofile  ProfileName]  [-d|--debug] [-h|-?|--help]

[--ignorelockingfailure] [--ignoreskippedcluster] [--maps] [--nosuffix] [-s|--short]

[-S|--select Selection] [--units hsbkmgtHKMGT] [-v[v]|--verbose [--verbose]] [--version] [PhysicalVolumePath...]

 

pvdisplay -C|--columns [--aligned] [--binary] [-a|--all] [--commandprofile  ProfileName] 

[-d|--debug]  [-h|-?|--help]  [--ignorelockingfailure] [--noheadings] [--nosuffix] [-o|--options [+]Field[,Field...]]  [-O|--sort [+|-]Key1[,[+|-]Key2...  ]] [-S|--select Selection]

[--separator Sep-arator] [--unbuffered] [--units hHbBsSkKmMgGtTpPeE] [-v[v]|--verbose [--verbose]] [--version] [PhysicalVolumePath...]

 常用命令详解:  

-C

以列显示输出

-c

生成冒号分隔的输出The values are:

              ·物理卷设备名称

              ·卷组名称

              ·扇区物理体积大小

              ·内部物理卷号(作废)

              ·物理卷状态

              ·物理卷(不可)分配

              ·此物理卷上的逻辑卷的当前数量

              ·物理范围大小(以千字节为单位)

              ·物理区段的总数

              ·物理区段的免费数量

              ·分配的物理区段数量

-s

只显示给定物理卷的大小

-m

显示物理区段到逻辑卷和逻辑区段的映射

  1. 显示当前路径pwd

  pwd [option]

常用命令详解:  

-L

使用环境中的路径,即使它包含符号连接也是显示目前工作目录

-P

显示实际工作目录

 

  1. 删除文件和目录rm

rm [OPTION]... FILE...

常用命令详解:  

-f

强制删除,忽略不存在的文件和参数

-i

在每次删除之前提示

-I

在删除三个以上文件之前提示一次,或者在递归删除时提示

-r

以递归方式删除目录及其内容

-d

删除空目录

  1. 删除空目录rmdir 

rmdir [OPTION]... DIRECTORY...

 常用命令详解:  

-p

删除目录及其父目录

  1. 显示/操作IP路由表route

route [-CFvnee]

route  [-v] [-A family] add [-net|-host] target [netmask Nm] [gw Gw] [metric N] [mss M] [window W] [irtt I] [reject] [mod] [dyn] [reinstate] [[dev] If]

route  [-v] [-A family] del [-net|-host] target [gw Gw] [netmask Nm] [metric N] [[dev] If]

route  [-V] [--version] [-h] [--help]

常用命令详解:  

-A family

使用指定的地址族(如' inet ';使用“路由帮助”来获得完整的列表)。

-F   

显示转发表,默认值

-C  

显示路由缓存

-v  

选择详细的操作。

-n

显示数字地址,而不是试图确定符号主机名。

-e    

显示路由表。ee将生成一个非常长的行,包含路由表中的所有参数。

del   

删除路由

add   

添加一条新路由

Target

目标网络或主机

-net 

目标是一个网络。

-host 

目标是一个主机。

netmask NM

添加网络路由时,要使用的网络掩码。

gw GW

网关

metric M

将路由表(路由守护进程使用的)中的度量字段设置为M。

Flags:总共有多个标志,代表意义如下:

U

该路由是启动的

H

目标是一台主机(IP)而非网络

G

需要通过外部的主机来传递数据包

R

使用动态路由时,恢复路由信息的标志

D

动态路由

M

路由已经被修改了

!

这个路由将不会被接受

  1.  rpm包安装

rpm -ivh  package_name  [可执行参数]

   rpm -qa                                                                                 <=======已安装文件

   rpm -q[licdR] 已安装的软件名称                                  <=======已安装文件

   rpm -qf 存在与系统上面的某个文件名                     <=======已安装文件

   rpm -qp[licdR] 未安装的某个文件名称                      <=======查询RPM文件

rpm -e 软件名称            <===卸载RPM

rpm --rebuilddb          <===重建数据库

 

  1. 三剑客之三:输入流编辑器sed

 sed [OPTION]... {script-only-if-no-other-script} [input-file]...

常用命令详解:  

-n

只打印模式匹配的行

-e script

将脚本添加到要执行的命令中。

-f script-file

将脚本文件的内容添加到要执行的命令中。

-i[SUFFIX]

直接修改文件内容

-r

在脚本中使用扩展正则表达式。(默认是基础正则表达式)

  常用命令

=

打印当前行号。

a \

新增,a的后面可以接字符串,

i \

插入,i的后面可以接字符串

r filename

附加从文件名读取的文本。

{  

开始一个命令块(以一个}结束)。

d    

删除,删除选择的行;

p   

打印当前模式空间。

s/正则表达式/更换/

替换,可以直接进行替换工作。

w filename

写并追加模板块到file末尾;

W filename

写并追加模板块的第一行到file末尾;

y/source/dest/

将源文件中出现的模式空间中的字符转换为dest中相应的字符。

  1. 打印数字序列seq

用法:seq [选项]... 尾数

或:seq [选项]... 首数 尾数

或:seq [选项]... 首数 增量 尾数

  1. 对文本文件的行进行排序sort

       sort [OPTION]... [FILE]...

       sort [OPTION]... --files0-from=F

 常用命令详解:

-b

忽略前导空白

-d

仅考虑空格和字母数字字符

-f

将小写字母视为大写字母

-i

仅考虑可打印字符

-n

根据数值比较

-r

反转比较结果

-o

将结果写入FILE而不是标准输出

-t

分隔符

-u

排序键值字段匹配,去重,仅出现一行

          

  1. 另一个研究套接字的实用程序ss

ss [options] [ FILTER ]

 常用命令详解:

-n

解析服务名称。

-r

尝试解析数字地址/端口。

-a

显示所有套接字。

-l

显示监听套接字。

-e

显示详细的套接字信息

-m

显示套接字内存使用情况。

-4

仅显示IP版本4套接字(-f inet的别名)

-t

仅显示TCP套接字。

-u

仅显示UDP套接字。

  1. 由最后一行到第一行反向在屏幕上显示出来tac 

tac [OPTION]... [FILE]...

  1. 输出文件的最后一部分tail

tail [OPTION]... [FILE]...

常用命令详解:默认情况,显示最后10行。

-c

输出最后K个字节;

-f

随着文件的增长输出附加数据;表示持续检测

-n

输出最后K行,K行以后的行(包括K行)

--pid=PID

使用-f,在进程ID之后终止,PID死掉

  1. 打包命令tar

 tar [OPTION...] [FILE]...

 常用命令详解:

-c

创建一个新的档案

-d

找到存档和文件系统之间的差异

--delete

从档案中删除(不在磁带上!)

-r

将文件追加到档案的末尾

-t

列出档案的内容

-u

仅追加比在存档中复制的文件新的文件

-x

解压缩

-C

在特定目录解压缩

-f

-f后面要接被处理的文件名,-f单独写一个参数

-j

通过bzip2的支持进行压缩/解压缩,

-z

通过gzip的支持进行压缩/解压缩

-p

保留备份数据的原本权限与属性,

-P

保留绝对路径,即允许备份数据中含有根目录存在之意

-v

显示操作的详细信息

 

  1. 抓包tcpdump

       tcpdump [ -AdDefIKlLnNOpqRStuUvxX ] [ -B buffer_size ] [ -c count ]

               [ -C file_size ] [ -G rotate_seconds ] [ -F file ]

               [ -i interface ] [ -m module ] [ -M secret ]

               [ -r file ] [ -s snaplen ] [ -T type ] [ -w file ]

               [ -W filecount ]

               [ -E spi@ipaddr algo:secret,...  ]

               [ -y datalinktype ] [ -z postrotate-command ] [ -Z user ]

               [ expression ]

常用命令详解: 

-A  

以ASCII格式打印每个数据包(减去它的链接级标头)。便于捕获web页面。

-c   

收到计数包后退出。

-F  

使用file作为过滤器表达式的输入。命令行上给出的附加表达式将被忽略。

 -i    

监听接口。

-I  

将界面置于“监控模式”

-S 

打印TCP序列号的绝对值,而不是相对值。

-v 

在解析和打印时,生成(稍微多一点)详细的输出。

-vv

甚至更冗长的输出。

-vvv

甚至更冗长的输出。

-w    

将原始数据包写入文件,而不是解析并打印出来。

 

  1. 检查文件类型并比较值test

       test EXPRESSION

       test

 

       [ EXPRESSION ]

       [ ]

       [ OPTION

test表达式:

测试标志

代表意义

( EXPRESSION )

表达是真的

! EXPRESSION

表达式为假

 EXPRESSION1 -a EXPRESSION2

EXPRESSION1和EXPRESSION2都为真

 EXPRESSION1 -o EXPRESSION2

EXPRESSION1或EXPRESSION2为真

STRING1 = STRING2

字符串相等

STRING1 != STRING2

字符串不相等

INTEGER1 -eq INTEGER2

INTEGER1等于INTEGER2

INTEGER1 -ne INTEGER2

INTEGER1不等于INTEGER2

INTEGER1 -gt INTEGER2

INTEGER1大于INTEGER2

INTEGER1 -lt INTEGER2

INTEGER1小于INTEGER2

INTEGER1 -ge INTEGER2

INTEGER1大于或等于INTEGER2

INTEGER1 -le INTEGER2

INTEGER1小于或等于INTEGER2

FILE1 -ef FILE2

FILE1和FILE2具有相同的设备和inode编号

FILE1 -nt FILE2

FILE1比FILE2更新(修改日期)

FILE1 -ot FILE2

FILE1早于FILE2

-b FILE

FILE是块设备

-c FILE

FILE是字符设备文件

-d FILE

FILE是目录

-e FILE

文件已存在

-f FILE

FILE是常规文件

-g FILE

FILE有设置SGID

-G FILE

FILE存在并且由有效组ID拥有

-h FILE

FILE存是符号链接(与-L相同)

-k FILE

FILE存在并且已设置其粘性位

-L FILE

FILE是符号链接(与-h相同)

-O FILE

FILE存在且由有效用户ID拥有

-p FILE

FILE是一个命名管道

-r FILE

FILE是可读的

-s FILE

FILE存在且大小大于零

-S FILE

FILE存在并且是一个套接字

-t FD 

文件描述符FD在终端上打开

-u FILE

FILE有设置setUID

-w FILE

FILE是可写入的

-x FILE

FILE是可执行(或搜索)权限

-n STRING

STRING非null

-z STRING

STRING为null

      if [里面是test判断式]

多重条件判定

test

shell

 

-a  

&&

两个条件同时成立!才回传true

-o

||

任何一个条件成立!可回传true

!

!

判断式为假,则传回true.即test ! -x file ,file不具有X权限,则回传true

  1. 顶部显示Linux任务top

top -hv | -abcHimMsS -d delay -n iterations -p pid [, pid ...]

  1. 更改文件时间戳,修改文件时间或创建新文件。touch

touch [OPTION]... FILE...

  1. 翻译或删除字符tr

 tr [OPTION]... SET1 [SET2]

常用命令详解: 

 -c

取SET1的反义。tr要转换的字符,变成未列在SET1中的字符

-d

删除SET1中的字符,不翻译

-s

将SET1中列出的重复字符的浓缩成一个

-t

首先将SET1截断为SET2的长度

  1. 报告或省略重复的行uniq

 uniq [OPTION]... [INPUT [OUTPUT]]

      常用命令详解: 

-c

打印每行在文本中重复出现的次数

-d

只打印重复的行

-u

只打印唯一的行

  1. 创建或更新用户信息useradd

useradd [options] LOGIN

useradd -D

useradd -D [options]

常用命令详解:   

 -b BASE_DIR

定义主目录

-c COMMENT

用户名的描述

-d HOME_DIR

将使用HOME_DIR作为用户登录目录的值创建新用户

-e EXPIRE_DATE

将禁用用户帐户的日期。日期以YYYY-MM-DD格式指定。

-f INACTIVE

密码过期后直到帐户永久禁用的天数。值0在密码过期时禁用帐户,

-g GROUP

用户初始登录组的组名或编号。组名必须存在。组号必须引用已存在的组。

-G GROUP1...

用户也是其成员的补充组的列表

-m

如果不存在用户的主目录,则创建它。

-M

不要创建用户的主目录。

-N

不要创建与用户同名的组

-o

允许创建具有重复UID的用户帐户。此选项仅在与-u选项组合时有效

-p PASSWORD

密码

-r

创建一个系统帐户。

-s SHELL

用户登录shell的名称

-uUID

用户ID的数值。

-U,

创建与用户同名的组,并将用户添加到此组中。

  1. 删除用户帐户和相关文件userdel

  userdel [options] LOGIN

  1. 为每个文件统计换行符,单词和字节数wc

       wc [OPTION]... [FILE]...

       wc [OPTION]... --files0-from=F

常用命令详解:   

-c

统计字节数

-m

统计字符数

-l

统计换行计数

-L

统计最长行的长度

-w

统计字数统计

 

  1. 显示(shell)命令的完整路径which

which [options] [--] programname [...]

常用命令详解:   

-a

在PATH中打印所有匹配的可执行文件。

  1. 显示谁登录who

who [OPTION]... [ FILE | ARG1 ARG2 ]

常用命令详解:   

 -a

与 -b -d --login -p -r -t -T -u 相同

-b,

上次系统启动时间

-d

打印死进程

-H

列标题的打印行

-l

打印系统登录过程

-p

打印由init产生的活动进程

-q

所有登录名和登录的用户数

-r

打印当前运行级别

-u

列出已登录的用户

  1. 显示谁登录了,他们在做什么w

w - [husfiV] [user]

  1. yum-yum源安装

yum(选项)(参数)

常用命令详解:  

选项:

-y:对所有的提问都回答“yes”; 

参数:

install:安装rpm软件包;

update:更新rpm软件包;

check-update:检查是否有可用的更新rpm软件包;

remove:删除指定的rpm软件包;

list:显示软件包的信息;

search:检查软件包的信息;

info:显示指定的rpm软件包的描述信息和概要信息;

clean:清理yum过期的缓存;

shell:进入yum的shell提示符;

resolvedep:显示rpm软件包的依赖关系;

localinstall:安装本地的rpm软件包;

localupdate:显示本地rpm软件包进行更新;

deplist:显示rpm软件包的所有依赖关系。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值