您的位置:首页 > 运维架构 > Linux

Linux常用命令整理

2018-01-19 18:35 316 查看
Linux常用命令整理

一:文件处理

mkdir

作用

Mkdir命令的作用是建立名称为dirname的子目录,与MS DOS K的md命令类似,它的使
用权限是所有用户。

2.格式

mkdir [options] 目录名

3.[options]主要参数

一m,——mode=模式:设定权限<模式>;,与chmod类似。

一p,一一parents:耑要时创建上层目录:如果目录早已存在,则不当作错误。

一V,——verbose:每次创建新目录都显示信息。

——version:显示版本信息后离开。

4.应用实例

在进行目录创建时可以设置目录的权限,此时使用的参数是“-m”。假设要创建的目录名
是“tsk”,让所有用户都有rwx(即读、写、执行的权限),那么可以使用以下命令:

$ mkdir -m 777 tsk

 

grep

作用

grep命令可以指定文件中搜索特定的内容.并将含有这些内容的行标准输出。grcp全称是 Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。

格式

grep [options]

主要参数

[options]主要参数:

一C:只输出匹配行的计数。

一 1:不区分大小写(只适用于单字符)。

一h:査询多文件时不显示文件名。

一 1:査询多文件时只输出包含匹配字符的文件名。

一n:显示匹配行及行号。

一s:不显示不存在或无匹配文本的错误信息。

一v:显示不包含匹配文本的所有行。

pattern正则表达式主要参数:

\:忽略正则表达式中特殊字符的原有含义。

^:匹紀正则表达式的开始行。

$:匹配正则表达式的结束行。

\<:从匹配正则表达式的行开始。

\>;:到匹配正则表达式的行结束。

[]:单个字符,如[A]即A符合要求。

[-]:范围,如[A-Z],即A、B、C—直到Z都符合要求。

。:所有的单个字符。

* :有字符,长度可以为0。

正则表达式是Limix/Unix系统中非常重要的概念。正则表达式(也称为“regex”或“regexp”)
是一个可以描述一类字符串的模式(Pattern)。如采一个字符串可以用某个正则表达式来
描述,我们就说这个字符和该正则表达式匹配(Match)。这和DOS中用户可以使用通配 符代表任意字符类似。在Linux系统上,正则表达式通常被用来査找文本的模式.以及
对文本执行“搜索一荇换”操作和其它功能。

4.应用实例

査询DNS服务是曰常工作之一,这怠味着要维护褪益不同网络的大S1P地址。有时1P地 址会超过2000个。如果要査看nnn.nnn网络地址.但是却忘了第二部分中的其余部分,只
知到有两个句点,例如nnn nn..。要抽取其中所有nnn.nnnlP地址,使用
[0-9]\{3\}\.[0-0\{3\}\。含义是任意数字出现3次,后跟句点,接着是任意数字出现3次,后跟句点。
$grep '[0-9 ]\{3 \}\.[0-0\{3\\}\`ipfilc

补充说明,grep家族还包括fgrep和egrep。fgrep是fix grep,允许査找字符串而不是一个
模式:egrep是扩展grep.支持基本及扩展的正则表达式,但不支持模式范围的应用及
与之相对应的一些更加规范的模式。

find

作用

find命令的作用是在目录中搜索文件,它的使用权限是所有用户。

格式

find [path] [options] [expression]

path指定目录路径,系统从这里开始沿着目录树向下査找文件。它是一个路径列表,相互 用空格分离,如果不写path.那么默认为当前目录。

主要参数 [options]参数:

—depth:使用深度级别的査找过程方式.在某层指定目录中优先査找文件内容。

 —maxdepth levels:表示至多査找到开始目录的第level层子目录。level是一个非负数,如 采level是0的话表示仅在当前目录中査找。

—mindepth levels:表示至少査找到开始目录的第level层子目录。

—mount:不在其它文件系统(如Msdos、Vfat等)的目录和文件中査找。

—version:打印版本。

[expression]是匹配表达式,是find命令接受的表达式,find命令的所有操作都是针对表达
式的。它的参数非常多,这里只介绍一些常用的参数。

—name:支持统配符*和?。

—atime n:搜索在过去n天读取过的文件。

—ctime n:搜索在过去n天修改过的文件。

—group grpoupname:搜索所有组为
grpoupnamc 的文件。

—user用户名:搜索所有文件属主为用户名(ID或名称)的文件。

—size n:搜索文件大小是n个block的文件。

—print:输出搜索结果,并且打印。

1. 应用技巧
find命令査找文件的几种方法:
(1)根据文件名査找

例如,我们想要査找一个文件名是lilo.conf的文件,可以使用如下命令:

find/ —
name lilo.conf

find命令后的“/”表示搜索整个硬盘。

(2)快速査找文件

报据文件名査找文件会遇到一个实际问题,就是要花费相当长的一段时间,特别是大型
Linux文件系统和大容量硬盘文件放在很深的子目录中时。如果我们知道了这个文件存放
在某个目录中,那么只要在这个目录中往下寻找就能节省很多时间。比如smb.conf文件,
从它的文件后缀“.conf’可以判断这是一个配置文件,那么它应该在/etc 目<
1aa70
span style="font-family:'微软雅黑';">录内,此时可以
使用下面命令:

find /etc —name smb.conf

这样,使用“快速査找文件”方式可以缩短时间。

(3)根据部分文件名査找方法

有时我们知道只某个文件包含有abvd这4个字,那么要査找系统中所有包含有这4个字符 的文件可以输入卜面命令:
find / —name '*abvd*'

输入这个命令以后,Linux系统会将在录中査找所有的包含有abvd这4个字符的文件(其
中*是通配符),比如abvdrmyz等符合条件的文件都能显示出来。

(4)使用混合査找方式査找文件

find命令可以使用混合査找的方法,例如.我们想在/etc 目录中査找大于500000字节,并
且在24小时内修改的某个文件,则可以使用-and (与)把两个査找参数链接起来组合成一个 混合的査找方式。

find /etc -size +500000c -and -mtime +1

diff

1.作用

diff命令用于两个文件之间的比较.并指出两者的不冋.它的使用权限是所有用户。

2.格式

diff[options]源文件目标文件

[options]主要参数

—a:将所有文件当作文本文件来处理。

—b:忽略空格造成的不同。

—B:忽略空行造成的不同。

—c:使用纲要输出格式。

—H:利用试探法加速对大文件的搜索。

—I:忽略大小写的变化。

 —n--rcs:输出RCS格式。

cat

1. 作用

cat (“concatenate”的缩写)命令用于连接并显示指定的一个和多个文件的有关倌息,它的
使用权限是所有用户。

2.格式

cat [options]文件 1 文件 2

3.[options]主要参数

一n:由第一行开始对所有输出的行数编号。

一b:和一n相似,只不过对于空白行不编号。

一s:当遇到有连续两行以上的空白行时,就代换为一行的空白行。

2. 应用举例

(1).cat命令一个最简单的用处是显示文本文件的内容。例如,我们想在命令行看一下
README文件的内容,可以使用命令:

$ cat README

(2).有时耑要将几个文件处理成一个文件.并将这种处理的结果保存到一个单独的输出文
件。cat命令在其输入上接受一个或多个文件,并将它们作为一个单独的文件打印到它的输
出。例如,把README和INSTALL的文件内容加上行号(空白行不加)之后,将内容附
加到一个新文本文件file中:

$ cat README INSTALL Filcl

(3). cat还有一个重要的功能就是可以对行进行编号,这种功能对于程序文档的编制,以
及法律和科学文档的编制很方便,打印在左边的行号使得参考文档的某一部分变得容易,

这些在编程、科学研究、业务报告甚至是立法工作中都是非常重要的。

例如使用cat命令/etc/named.conf文件进行编号

对行进行编号功能有七(只能对非空白行进行编号)和-II (可以对所有行进行编号)两个
参数:

$ cat -b /ctc/named.conf

二.系统安全

passwd

1. 作用

passwd命令原来修改账户的登陆密码,使用权限是所有用户。

2. 格式

passwd [选项]账户名称

3. 主要参数

-1:锁定己经命名的账户名称.只有具备超级用户权限的使用者方可使用。

-u:解开账户锁定状态,只有具备超级用户权限的使用者方可使用。

 -x,--maximum=DAYS:最大密码使用时间(天),只有具备超级用户权限的使用者方可
使用。

-n,--minimUm=DAYS:最小密码使用时间(天),只有具备超级用户权限的使用者方可
使用。

-d:删除使用者的密码,只有具备超级用户权限的使用者方可使用。

-S:检査指定使用者的密码认证种类,只有具备超级用户权限的使用者方可使用。

4. 应用实例

$ passwd

Changing password for user cao.

Changing password for cao (current) UNIX password:

New UNIX password:

Retype new UNIX password:

passwd: all authentication tokens updated successfully.

从上面可以看到,使用passwd命令耑要输入旧的密码,然后再输入两次新密码。

su

1.作用

SU的作用是变更为其它使用者的身份,超级用户除外.耑要键入该使用者的密码。

2.格式

su [选项]…[-][USER [ARG]…]

3.主要参数

-f ,--fast:不必读启动文件(如csh.cshrc等),仅用子csh或tcsh两种Shell。

-1 . --login:加了这个参数之后,就好像是重新登陆为该使用者一样,大部分环境变量 (例如HOME、SHELL和USER等)都是以该使用者(USER)为主,并且工作目录也会
改变。如采没有指定USER.缺省情况是root。

-m, -p,-preserve-environment:执行
su 时不改变环境变数。

-c command:变更账号为USER的使用者,并执行指令(command)后再变回原来使用者。
USER:欲变更的使用者账号,ARG传入新的Shell参数。

4.应用实例

变更账号为超级用户,并在执行df命令后还原使用者。su -c df root

Chown

1. 作用

更改一个或多个文件或目录的属主和属组。使用权限是超级用户。

2.格式

chown [选项] 用户或组  文件

3.主要参数

--dereference:受影响的是符号链接所指示的对象,而非符号链接本身。

-h,--no-dereferencc:会影响符号链接本身,而非符号链接所指示的目的地(当系统支持更
改符号链接的所有者,此选项才有效)。

-from=目前所有者:目前组只当每个文件的所有者和组符合选项所指定的,才会更改所有 者和组。其中一个可以省略.这已省略的属性就不耑要符合原有的厲性。

-f, -silent,
--quiet:去除大部分的错误信息。

-R,
--recursive:递归处理所有的文件及子目录。

-V,--verbose:处理任何文件都会显示信息。

4.说明

chown将指定文件的拥有者改为指定的用户或组.用户可以是用户名或用户ID:组可以
是组名或组ID:文件是以空格分开的要改变权限的文件列表,支持通配符。系统管理员经
常使用chown命令,在将文件拷贝到另一个用户的目录下以后,让用户拥有使用该文件的
权限。

5. 应用实例

1. 把文件shiyan.c的所有者改为wan

 $ chown wan shiyan.c

2.把目录/hi及其下的所有文件和子目录的属主改成wan.
属组改成users。

$ chown -
R wan.users /hi

chattr

1.作用

修改ext2和ext3文件系统厲性(attribute),使用权限超级用户。

2•格式

chattr [-RV] [-+=AacDdijsSu]
[-v version] 文件或
目 录

3.主要参数

一R:递归处理所有的文件及子目录。

一V:详细显示修改内容,并打印输出。

一:失效属性。

+ :激活属性。

=:指定届性。

A: Atime.告诉系统不要修改对这个文件的最后访问时间。

S: Sync,
—旦应用程序对这个文件执行了写操作,使系统立刻把修改的结泶写到磁盘。

a: Append Only,系统只允许在这个文件之后追加数据.不允许任何进程覆盖或截断这个
文件。如果目录具有这个属性.系统将只允许在这个目录下建立和修改文件.而不允许删除 任何文件。

i: Immutable,系统不允许对这个文件进行任何的修改。如采目录具有这个厲性.那么任 何的进程只能修改目录之下'的文件,不允许建立和删除文件。

D:检査压缩文件中的错误。

d: No dump,在进行文件系统备份时,dump程序将忽略这个文件。

C: Compress,系统以透明的方式压縮这个文件。从这个文件读取时,返回的是解甩之后
的数据:而向这个文件中写入数据时,数据首先被压缩之后才写入磁盘。

s: Secure Delete.让系统在删除这个文件时,使用0填充文件所在的区域。

u: Undelete,当一个应用程序请求删除这个文件,系统会保留其数据块以便以后能够恢
复删除这个文件。

4.说明

chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,如采Linux内核版
木低于2.2,那么许多功能不能实现。同样一D检査压缩文件中的错误的功能,耑要2.5.19
以上内核才能支持。另外.通过chattr命令修改属性能够提高系统的安全性.但是它并不适 合所有的目录。chattr命令不能保护/、/dev、/tmp、八'arU录。

5.应用实例

1.恢复/root 目录,即子目录的所有文件

# chattr -R +u/root

2.用chattr命令防止系统中某个关键文件被修改

在Linux K.有些配置文件(passwd,fatab)是不允许任何人修改的.为了防止被误删除或修

改,可以设定该文件的“不可修改位(immutab)”,命令如下:

# chattr +i /etc/fstab 

who

1.作用

who显示系统中有哪些用户登陆系统.显示的资料包含了使用者ID、使用的登陆终端、
上线时间、呆滞时间、CPU占用,以及做了些什么。使用权限为所有用户。

2.格式

who - [husfV] [user]

3.主要参数

-h:不要显示标题列。

-u:不要显示使用者的动作/工作。

-s:使用简短的格式来显示。

-f:不要显示使用者的上线位罝。

-V:显示程序版本。

4.说明

该命令主要用于査看当前在线上的用户情况。如采用户想和其它用户建立即时通Q,比如
使用talk命令,那么首先要确定的就是该用户确吹:在线上,不然talk进程就无法建立起来。
又如,系统管理员希望监视每个登录的用户此时此刻的所作所为.也要使用who命令。who
命令应用起来非常简单,可以比较准确地掌握用户的情况,所以使用非常广泛。

 

三.系统管理

df

6. 作用

df命令用来检査文件系统的磁盘空间占用情况.使用权限是所有用户。

7. 格式

df [options]

8. 主要参数

一s:对每个Names参数只给出占用的数据块总数。

一a:递归地显示指定目录中各文件及子目录中各文件占用的数据块数。若既不指定_s,也
不指定一a,则只显示Names中的每一个目录及其中的各子H目录所占的磁盘块数。

—k:以1024字节为单位列出磁盘空间使用情况。

一x:跳过在不冋文件系统上的目录不予统计。

一 1:计算所有的文件大小,对硬链接文件则计算多次。

一i:显示inode信息而非块使用量。

一h:以容易理解的格式印出文件系统大小,例如136KB、254MB、21GB。

—P:使用POS1X输出格式。

一T:显示文件系统类型。

4•说明

df命令被广泛地用来生成文件系统的使用统计数据.它能显示系统中所有的文件系统的信 息,包括总容量、可用的空闲空间、目前的安装点等。

超级权限用户使用df命令时会发现这样的惜况:某个分区的容量超过了 100%。这是因为
Linux系统为超级用户保留了 10%的空间.由其卑独支紀。也就是说.对于超级用户而言,
他所见到的硬盘容量将是110%。这样的安排对于系统管理而言是有好处的,当硬盘被使用 的容S接近100%时系统管理员还可以正常工作。

5.应用实例

Linux 支持的文件系统非常多,包括
JFS、RciserFS、exu ext2、ext3、ISO9660、XFS、Minx、

vfat、MSDOS等。使用df-T命令査看磁盘空间时还可以得到文件系统的信息:

#df -T

文件系统类型容S己用可用已用%挂载点
/dev/hda7
reiserfs 5.2G 1.6G 3.7G 30%
/

/dev/hdal vfat 2.4G 1.6G 827M 66%
/windows/C

/dev/hda5
vfat 3.0G 1.7G 1.3G 57%/windows/D

 /dev/hda9
vfat 3.0G 2.4G 566M 82%
/windows/E

 /dev/hdalO NTFS 3.2G 573M 2.6G 18%
/windows/F

 /dev/hdal 1
vfat 1.6G 1.5G23M 99%/windows/G

从上面除了可以看到磁盘空间的容量使用情况外,分区的文件系统类型、挂载点等佔息也

—览无遗。

free

1.作用

free命令用来显示内存的使用情况.使用权限是所有用户。

2.格式

free [―b|—k|—m]
[—o]
[—s delay] [—t]
[—V]

3.主要参数

-b -k -m:分别以字节(KB、MB)为单位显示内存使用情况。

一s delay:显示每隔多少秒数来显示一次内存使用情况。

一t:显示内存总和列。

一o:不显示缓冲区调节列。

9. 应用实例

free命令是用来査者内存使用情况的主要命令。和top命令相比,它的优点是使用简单,并
且只占用很少的系统资源。通过一S参数可以使用free命令不间断地监视有多少内存在使用,
这样可以把它当作一个方便实时监控器。

#free -b -s5

使用这个命令后终端会连续不断地报告内存使用情况(以字节为单位),每5秒更新一次。
quota

1.作用

quota命令用来显示磁盘使用愔况和限制情况,使用权限超级用户。

2.格式

quota[—g][—u][—v][—p]用户名组名

3.参数

一g:显示用户所在组的磁盘使用限制。

一U:显示用户的磁盘使用限制。

一v:显示没有分配空间的文件系统的分配情况。

一P:显示简化仏息。

4.应用实例

在企业应用中磁盘配额非常重要,普通用户要学会看懂自己的磁盘使用情况。要査询自己的
磁盘配额可以使用下面命令(下例中用户账号是caojh):

# quota caojh

Disk quotas for user caojh(uid 502):

Filesystem blocks quota limit grace files quota limit grace
/dev/hda3 58 200000 400000 41 500 1000

以上显示ID号为502的caojh账号,文件个数设置为500〜1000个.硬盘空间限制设置为
200MB〜400MB。一旦磁盘配额要用完时,就耑要删除一些垃圾文件或向系统管理员请求追加配额。

at

1.作用

at命令用来在指定时刻执行指定的命令序列。

2.格式

at [—V] [―q x]
[―f file]
[—m] time

3.主要参数

一V:显示标准错误输出。

一q:许多队列输出。

一f:从文件中读取作业。

一m:执行完作业后发送电子邮件到用户。

time:设定作业执行的时间。time格式有严格的要求,由小时、分钟、日期和时间的偏移量组成.其中日期的格式为MM.DD.YY,MM是分钟,DD是日期,YY是指年份。偏移量的
格式为时间+偏移量,单位是minutes、hours和days。

4.应用实例

# at ?f data
15:30 +2 days

上面命令表示让系统在两天后的17: 30执行文件data中指明的作业。

groupadd

1.作用

groupadd命令用于将新组加入系统。

2.格式

groupadd [―g gid]
[—o]]
[—r]
[―f] groupname

3.主要参数

一g gid:指定组ID号。

一o:允许组ID号,不必惟一。

一r:加入组ID号,低于499系统账号。

一f:加入已经有的组时.发展程序退出。

4.应用实例

建立一个新组,并设置组ID加入系统:

# groupadd
 -g 344 cjh

此时在/etc/passwd文件中产生一个组ID
(G1D)是344的项目。

 
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: