Linux grep命令的使用用法

Linux grep命令的使用用法
Linux grep命令的使用用法

Linux Grep用法

QUOTE:

原帖由"网中人" 发表:

比方以grep 来说, 在Linux 上你可找到grep, egrep, fgrep 这几个程序, 其差异大致如下:

* grep:

传统的grep 程序, 在没有参数的情况下, 只输出符合RE 字符串之句子. 常见参数如下:

-v: 逆反模示, 只输出"不含" RE 字符串之句子.

-r: 递归模式, 可同时处理所有层级子目录里的文件.

-q: 静默模式, 不输出任何结果(stderr 除外. 常用以获取return value, 符合为true, 否则为false .)

-i: 忽略大小写.

-w: 整词比对, 类似\ .

-n: 同时输出行号.

-c: 只输出符合比对的行数.

-l: 只输出符合比对的文件名称.

-o: 只输出符合RE 的字符串. (gnu 新版独有, 不见得所有版本都支持.)

-E: 切换为egrep .

* egrep:

为grep 的扩充版本, 改良了许多传统grep 不能或不便的操作. 比方说:

- grep 之下不支持? 与+ 这两种modifier, 但egrep 则可.

- grep 不支持a|b 或(abc|xyz) 这类"或一"比对, 但egrep 则可.

- grep 在处理{n,m} 时, 需用\{ 与\} 处理, 但egrep 则不需.

诸如此类的... 我个人会建议能用egrep 就不用grep 啦... ^_^

* fgrep:

不作RE 处理, 表达式仅作一般字符串处理, 所有meta 均失去功能.

g r e p一般格式为:

][ - ] CODE:

grep [选项]基本正则表达式[文件]

这里基本正则表达式可为字符串。

单引号双引号

在g r e p命令中输入字符串参数时,最好将其用双引号括起来。

在调用模式匹配时,应使用单引号。

例如:“m y s t r i n g”。这样做有两个原因,一是以防被误解为s h e l l命令,二是可以用来查找多个单词组成的字符串。在调用变量时,也应该使用双引号,诸如:g r e p“$ M Y VA R”文件名,如果不这样,将没有返回结果。

常用的g r e p选项有:

QUOTE:

-c 只输出匹配行的计数。

-i 不区分大小写(只适用于单字符)。

-h 查询多文件时不显示文件名。

-l 查询多文件时只输出包含匹配字符的文件名。

-n 显示匹配行及行号。

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

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

开始讨论之前,先生成一个文件,插入一段文本,并在每列后加入< Ta b >键,g r e p命令示例中绝大多数将以此为例,其命名为d a t a .f。生成一个文件,d a t a . f的记录结构如下:

QUOTE:

第1列:城市位置编号。

第2列:月份。

第3列:存储代码及出库年份。

第4列:产品代号。

第5列:产品统一标价。

第6列:标识号。

第7列:合格数量。

文件内容如下:

][ - ] CODE:

$ cat data.f

48 Dec 3BC1977 LPSX 68.00 LVX2A 138

483 Sept 5AP1996 USP 65.00 LVX2C 189

47 Oct 3ZL1998 LPSX 43.00 KVM9D 512

219 dec 2CC1999 CAD 23.00 PLV2C 68

484 nov 7PL1996 CAD 49.00 PLV2C 234

483 may 5PA1998 USP 37.00 KVM9D 644

216 sept 3ZL1998 USP 86.00 KVM9E 234

1、查询多个文件

在所有文件中查询单词“ sort it”

][ - ] CODE:

$ grep "sort it" *

2、行匹配

1)显示包含“4 8”字符串的文本:

][ - ] CODE:

$ grep "48"data.f

2)输出匹配行的总数

][ - ] CODE:

$ grep -c "48"data.f

4

g r e p返回数字4,表示:包含字符串“4 8”的有4行。

3)行数

显示满足匹配模式的所有行行数:

][ - ] CODE:

$ grep -n "48"data.f

行数在输出第一列,后跟包含4 8的每一匹配行。

4)显示非匹配行

显示所有不包含4 8的各行

][ - ] CODE:

$ grep -v "48"data.f

5)精确匹配

可能大家已注意到,在上一例中,抽取字符串“ 4 8”,返回结果包含诸如4 8 4和4 8 3等包含“4 8”的其他字符串,实际上应精确抽取只包含4 8的各行。

使用g r e p抽取精确匹配的一种更有效方式是在抽取字符串后加\ >。假定现在精确抽取4 8,方法如下:

][ - ] CODE:

$grep "48\>" data.f

QUOTE:

另一种方法我试过,好像不行:

注意在每个匹配模式中抽取字符串后有一个< Ta b >键,所以应操作如下:

< Ta b >表示点击t a b键。

$grep "48" data.f

6)大小写敏感

缺省情况下,g r e p是大小写敏感的,如要查询大小写不敏感字符串,必须使用- i开关。在d a t a . f文件中有月份字符S e p t,既有大写也有小写,要取得此字符串大小写不敏感查询,方法如下:

][ - ] CODE:

$grep -i "48" data.f

grep和正则表达式

使用正则表达式使模式匹配加入一些规则,因此可以在抽取信息中加入更多选择。使用正则表达式时最好用单引号括起来,这样可以防止g r e p中使用的专有模式与一些s h e l l命令的特殊方式相混淆。

1、模式范围

抽取代码为4 8 4和4 8 3的城市位置,可以使用[ ]来指定字符串范围。

][ - ]

CODE:

$ grep "48[34]" data.f

483 Sept 5AP1996 USP 65.00 LVX2C 189

484 nov 7PL1996 CAD 49.00 PLV2C 234

483 may 5PA1998 USP 37.00 KVM9D 644

2、不匹配行首

使行首不是4或8,可以在方括号中使用^记号。

][ - ] CODE:

$ grep "^[^48]" data.f

219 dec 2CC1999 CAD 23.00 PLV2C 68

216 sept 3ZL1998 USP 86.00 KVM9E 234

如果是字符串48

][ - ] CODE:

$ grep -v "^[^48]" data.f

3、设置大小写

使用- i开关可以屏蔽月份S e p t的大小写敏感

][ - ] CODE:

[sam@chenwy sam]$ grep -i "sept" data.f

483 Sept 5AP1996 USP 65.00 LVX2C 189

216 sept 3ZL1998 USP 86.00 KVM9E 234

也可以用另一种方式[ ]模式抽取各行包含S e p t和s e p t的所有信息。

][ - ] CODE:

[sam@chenwy sam]$ grep '[sS]ept' data.f

如果要抽取包含S e p t的所有月份,不管其大小写,并且此行包含字符串483,可以使用管道命令,即符号“|”左边命令的输出作为“ |”右边命令的输入。举例如下:

][ - ] CODE:

[sam@chenwy sam]$ grep '[sS]ept' data.f | grep 48

483 Sept 5AP1996 USP 65.00 LVX2C 189

不必将文件名放在第二个g r e p命令中,因为其输入信息来自于第一个g r e p命令的输出

4、匹配任意字符

如果抽取以K开头,以D结尾的所有代码,可使用下述方法,因为已知代码长度为5个字符:

][ - ] CODE:

[sam@chenwy sam]$ grep 'K...D' data.f

47 Oct 3ZL1998 LPSX 43.00 KVM9D 512

483 may 5PA1998 USP 37.00 KVM9D 644

将上述代码做轻微改变,头两个是大写字母,中间两个任意,并以C结尾:

][ - ] CODE:

[sam@chenwy sam]$ grep '[A-Z]..C' data.f

483 Sept 5AP1996 USP 65.00 LVX2C 189

219 dec 2CC1999 CAD 23.00 PLV2C 68

484 nov 7PL1996 CAD 49.00 PLV2C 234

5、日期查询

一个常用的查询模式是日期查询。先查询所有以5开始以1 9 9 6或1 9 9 8结尾的所有记录。使用模式5 . . 1 9 9 [ 6 , 8 ]。这意味着第一个字符为5,后跟两个点,接着是1 9 9,剩余两个数字是6或8。

][ - ] CODE:

[sam@chenwy sam]$ grep '5..199[6,8]' data.f

483 Sept 5AP1996 USP 65.00 LVX2C 189

483 may 5PA1998 USP 37.00 KVM9D 644

6、范围组合

必须学会使用[ ]抽取信息。假定要取得城市代码,第一个字符为0-9,第二个字符在0到5之间,第三个字符在0到6之间,使用下列模式即可实现。

][ - ] CODE:

[sam@chenwy sam]$ grep '[0-9][0-5[0-6]' data.f

48 Dec 3BC1977 LPSX 68.00 LVX2A 138

483 Sept 5AP1996 USP 65.00 LVX2C 189

47 Oct 3ZL1998 LPSX 43.00 KVM9D 512

219 dec 2CC1999 CAD 23.00 PLV2C 68

484 nov 7PL1996 CAD 49.00 PLV2C 234

483 may 5PA1998 USP 37.00 KVM9D 644

216 sept 3ZL1998 USP 86.00 KVM9E 234

这里返回很多信息,有想要的,也有不想要的。参照模式,返回结果是正确的,因此这里

][ - ] CODE:

[sam@chenwy sam]$ grep '^[0-9][0-5][0-6]' data.f

219 dec 2CC1999 CAD 23.00 PLV2C 68

216 sept 3ZL1998 USP 86.00 KVM9E 234

这样可以返回一个预期的正确结果。

以下要注意有无边界字符的区别

7、模式出现机率

抽取包含数字4至少重复出现两次的所有行,方法如下:

483 may 5PA1998 USP 37.00 KVM9D 644

上述语法指明数字4至少重复出现两次,注意有无边界字符的区

别。

同样,抽取记录使之包含数字9 9 9(三个9),方法如下:

][ - ] CODE:

[sam@chenwy sam]$ grep '9\{3,\}' data.f

219 dec 2CC1999 CAD 23.00 PLV2C 68

如果要查询重复出现次数一定的所有行,语法如下,数字9重复出现两次或三次:

][ - ] CODE:

[sam@chenwy sam]$ grep '9\{3\}' data.f

219 dec 2CC1999 CAD 23.00 PLV2C 68

[sam@chenwy sam]$ grep '9\{2\}' data.f

483 Sept 5AP1996 USP 65.00 LVX2C 189

47 Oct 3ZL1998 LPSX 43.00 KVM9D 512

219 dec 2CC1999 CAD 23.00 PLV2C 68

484 nov 7PL1996 CAD 49.00 PLV2C 234

有时要查询重复出现次数在一定范围内,比如数字或字母重复出现2到6次,下例匹配数字8重复出现2到6次,并以3结尾:

][ - ] CODE:

[sam@chenwy sam]$ cat myfile

83

888883

8884

88883

[sam@chenwy sam]$ grep '8\{2,6\}3' myfile

888883

88883

8、使用grep匹配“与”或者“或”模式

g r e p命令加- E参数,这一扩展允许使用扩展模式匹配。例如,要抽取城市代码为2 1 9或2 1 6,方法如下:

][ - ] CODE:

[sam@chenwy sam]$ grep -E '219|216' data.f

219 dec 2CC1999 CAD 23.00 PLV2C 68

216 sept 3ZL1998 USP 86.00 KVM9E 234

9、空行

结合使用^和$可查询空行。使用- c参数显示总行数:

使用- n参数显示实际在哪一行:

][ - ] CODE:

[sam@chenwy sam]$ grep -c '^$' myfile

10、匹配特殊字符

查询有特殊含义的字符,诸如$ . ' " * [] ^ | \ + ? ,必须在特定字符前加\。假设要查询包含“.”的所有行,脚本如下:

][ - ] CODE:

[sam@chenwy sam]$ grep '\.' myfile

或者是一个双引号:

][ - ] CODE:

[sam@chenwy sam]$ grep '\"' myfile

以同样的方式,如要查询文件名c o n f t r o l l . c o n f(这是一个配置文件),脚本如下:

][ - ] CODE:

[sam@chenwy sam]$ grep 'conftroll\.conf' myfile

11、查询格式化文件名

使用正则表达式可匹配任意文件名。系统中对文本文件有其标准的命名格式。一般最多六个小写字符,后跟句点,接着是两个大写字符。

][ - ] CODE:

[sam@chenwy sam]$ grep '^[a-z]\{1,6\}\.[A-Z]\{1,2\}' filename

这个写法我不知道有没有错:oops: :oops: :oops:

12 查询IP地址

要查看n n n . n n n网络地址,如果忘了第二部分中的其余部分,只知有两个句点,例如n n n . n n . .。要抽取其中所有nnn.nnn IP地址,使用[ 0 - 9 ] \ { 3 \ } \ . [ 0 - 0 \ { 3 \ } \。含义是任意数字出现3次,后跟句点,接着是任意数字出现3次,后跟句点。

][ - ] CODE:

[0-9]\{3\}\.[0-9]\{3\}\.'

上面还有一点错,改天更正

1、类名

g r e p允许使用国际字符模式匹配或匹配模式的类名形式。

类名及其等价的正则表达式类等价的正则表达式类等价的正则表达式

QUOTE:

[ [ : u p p e r : ] ] [ A - Z ] [ [ : a l n u m : ] ] [ 0 - 9 a - zA-Z]

[ [ : l o w e r : ] ] [ a - z ] [ [ : s p a c e : ] ] 空格或t a b键

[ [ : d i g i t : ] ] [ 0 - 9 ] [ [ : a l p h a : ] ] [ a - z A - Z ]

例一:取以5开头,后跟至少两个大写字母:

][ - ] CODE:

$grep '5[[:upper:]][[:upper]]' data.f

取以P或D结尾的所有产品代码:

][ - ] CODE:

grep '[[:upper:]][[:upper:]][P,D]' data.f

2、使用通配符*的匹配模式

][ - ] CODE:

$cat testfile

looks

likes

looker

long

试试如下:

][ - ] CODE:

grep "l.*s" testfile

如在行尾查询某一单词,试如下模式:

][ - ] CODE:

grep "ng$" testfile

这将在所有文件中查询行尾包含单词ng的所有行。

3、系统grep

文件passwd

][ - ] CODE:

[root@Linux_chenwy sam]# grep "sam" /etc/passwd

sam:x:506:4::/usr/sam:/bin/bash

上述脚本查询/ e t c / p a s s w d文件是否包含sam字符串

如果误输入以下脚本:

][ - ] CODE:

[root@Linux_chenwy sam]# grep "sam" /etc/password

grep: /etc/password: 没有那个文件或目录

将返回g r e p命令错误代码'No such file or directory'。

上述结果表明输入文件名不存在,使用g r e p命令- s开关,可屏蔽错误信息。

返回命令提示符,而没有文件不存在的错误提示。

][ - ] CODE:

[root@Linux_chenwy sam]# grep -s "sam" /etc/password

如果g r e p命令不支持- s开关,可替代使用以下命令:

][ - ] CODE:

[root@Linux_chenwy sam]# grep "sam" /tec/password >/dev/null 2>&1

脚本含义是匹配命令输出或错误( 2 > $ 1),并将结果输出到系统池。大多数系统管理员称/ d e v / n u l l为比特池,没关系,可以将之看成一个无底洞,有进没有出,永远也不会填满。

上述两个例子并不算好,因为这里的目的只想知道查询是否成功。

如要保存g r e p命令的查询结果,可将命令输出重定向到一个文件。

][ - ] CODE:

[root@Linux_chenwy sam]# grep "sam" /etc/passwd >/usr/sam/passwd.out

[root@Linux_chenwy sam]# cat /usr/sam/passwd.out

sam:x:506:4::/usr/sam:/bin/bash

脚本将输出重定向到目录/ t m p下文件p a s s w d . o u t中。

使用ps命令

使用带有ps x命令的g r e p可查询系统上运行的进程。ps x命令意为显示系统上运行的所有进程列表。要查看D N S服务器是否正在运行(通常称为n a m e d),方法如下:

][ - ] CODE:

[root@Linux_chenwy sam]# ps ax|grep "named"

2897 pts/1 S 0:00 grep named

输出也应包含此g r e p命令,因为g r e p命令创建了相应进程,ps x将找到它。在g r e p命令中使用- v选项可丢弃p s命令中的g r e p进程。如果ps x不适用于用户系统,替代使用ps -ef。这里,由于我没有DNS服务,因而只有grep 进程。

对一个字符串使用grep

g r e p不只应用于文件,也可应用于字符串。为此使用e c h o字符串命令,然后对g r e p命令使用管道输入。

][ - ] CODE:

[root@Linux_chenwy sam]# STR="Mary Joe Peter Pauline"

[root@Linux_chenwy sam]# echo $STR | grep "Mary"

Mary Joe Peter Pauline

匹配成功实现。

][ - ] CODE:

[root@Linux_chenwy sam]# echo $STR | grep "Simon"

因为没有匹配字符串,所以没有输出结果。

4、egrep

e g r e p代表e x p r e s s i o n或extended grep,适情况而定。e g r e p接受所有的正则表达式,e g r e p的一个显著特性是可以以一个文件作为保存的字符串,然后将之传给e g r e p作为参数,为此使用- f开关。如果创建一个名为g r e p s t r i n g s的文件,并输入4 8 4和4 7:

][ - ] CODE:

[root@Linux_chenwy sam]# vi grepstrings

[root@Linux_chenwy sam]# cat grepstrings

484

47

][ - ] CODE:

[root@Linux_chenwy sam]# egrep -f grepstrings data.f

47 Oct 3ZL1998 LPSX 43.00 KVM9D 512

484 nov 7PL1996 CAD 49.00 PLV2C 234

上述脚本匹配d a t a . f中包含4 8 4或4 7的所有记录。当匹配大量模式时,- f开关很有用,而在一个命令行中敲入这些模式显然极为繁琐。

如果要查询存储代码3 2 L或2 C C,可以使用(|)符号,意即“|”符号两边之一或全部。

][ - ] CODE:

[root@Linux_chenwy sam]# egrep '(3ZL|2CC)' data.f

47 Oct 3ZL1998 LPSX 43.00 KVM9D 512

219 dec 2CC1999 CAD 23.00 PLV2C 68

216 sept 3ZL1998 USP 86.00 KVM9E 234

可以使用任意多竖线符“ |”,例如要查看在系统中是否有帐号l o u i s e、m a t t y或pauline ,使用w h o命令并管道输出至e g r e p。

][ - ] CODE:

$who |egrep (louise|matty|pauline)

还可以使用^符号排除字符串。如果要查看系统上的用户,但不包括m a t t y和p a u l i n e,方法如下:

][ - ] CODE:

$who |egrep -v '^(matty|pauline)'

如果要查询一个文件列表,包括s h u t d o w n、s h u t d o w n s、r e b o o t和r e b o o t s,使用e g r e p可容易地实现。

][ - ] CODE:

$egrep '(shutdown |reboot) (s)?' *

egrep我等待网中人的讲解,嘿嘿

linux常用命令

新手刚刚接触Linux的时候可能处处感到不便,不过没有关系,接触新的事物都有这样的一个过程,在你用过Linux一段时间后,你就会逐渐了解Linux其实和Windows一样容易掌握。 由于操作和使用环境的陌生,如果要完全熟悉Linux的应用我们首先要解决的问题就是对Linux常用命令的熟练掌握。本章我们就来介绍Linux的常用基本命令。 Linux常用命令 1.Linux命令基础 Linux区分大小写。在命令行(shell)中,可以使用TAB键来自动补全命令。即可以输入命令的前几个字母,然后按TAB键,系统自动补全命令,若不止一个,则显示出所有和输入字母相匹配的命令。 按TAB键时,如果系统只找到一个和输入相匹配的目录或文件,则自动补全;若没有匹配的内容或有多个相匹配的名字,系统将发出警鸣声,再按一下TAB键将列出所有相匹配的内容(如果有的话)以供用户选择。 首先启动Linux。启动完毕后需要进行用户的登录,选择登陆的用户不同自然权限也不一样,其中―系统管理员‖拥有最高权限。 在启动Linux后屏幕出现如下界面显示:Red Hat Linux release 9 (Shrike) Kernel 2.4.20.8 on an i686

login: 输入:root(管理员名)后,计算机显示输口令(password:),输入你的口令即可。当计算机出现一个―#‖提示符时,表明你登录成功! 屏幕显示Linux提示符:[root@localhost root]#_ 这里需要说明的是―Red Hat Linux release 9 (Shrike)‖表示当前使用的操作系统的名称及版本。―2.4.20.8‖表示Linux操作系统的核心版本编号。―i686‖表示该台电脑使用的CPU的等级。 下面我们来介绍常用基本命令 一,注销,关机,重启 注销系统的logout命令 1,Logout 注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达logout命令即可: [root@localhost root]#logout

Linux常用命令

查询相关 find 按规则查找某个文件或文件夹,包括子目录 ?find . -name '*.sh' -- 以.sh结尾的文件 ?find . -name '*channel*' -- 包含channel字符的文件 ?find . -name 'build*' -- 以build开头的文件 ?find . -name 'abc??' -- abc后面有两个字符的文件 grep 查找内容包含指定的范本样式的文件,Global Regular Expression Print ?grep -n pattern files -- 规则-n表示显示行号 ?grep -n 'PostsActivity' AndroidManifest.xml ?grep -n '\d' AndroidManifest.xml ?grep 'aapt' build-channel.xml -- 文件中包含字符串的所有地方 ?grep -n 'aapt' build-channel.xml -- 文件中包含字符串的所有地方,并显示行号 ?ps -e | grep java -- 所有java进程 ?ps -e | grep -i qq --所有qq进程,不区分大小写 ?find . -name '*channel.xml' | xargs grep -n 'aapt' -- 在以channel.xml 结尾的文件中查找包含‘aapt’关键字的地方 ?ls | grep 'channel' -- 包含channel关键字的文件 which 在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果?which zip ?which grep 查看命令 tail tail [-f] [-c Number | -n Number | -m Number | -b Number | -k Number] [File] 从指定点开始将文件写到标准输出。使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的文件内容。 ?tail -f test.log,循环查看文件内容,Ctrl+c来终止 ?tail -n 5 test.log,显示文件最后5行内容

Shell和Linux常用命令

Shell和Linux常用命令 一、字符界面简介 1、进入字符工作方式的方法 1)、在图形环境下开启终端窗口进入字符工作方式; 2)、在系统启动后直接进入字符工作方式; 3)、使用远程登录方式(Telnet或SSH)进入字符工作方式。 2、虚拟控制台 3、关机与重启 1)、关机 #init 0 或 halt 或 shutdown –h now 2)、重启 #init 6 或 reboot 或 shutdown -r now 3)、命令init用于立即关机或重启,但是在多用户系统中,若想给用户发送警告信息以便各个用户完成自己的工作并注销登录,则必须使用shutdown命令。例如, #shutdown –h +5\ “System will be down in 5 minites,Please save your work.” 该命令警告所有用户将在5分钟后关闭系统。警告信息将显示在所有已登录的终端上。用-r参数替换-h参数用于重启。 4、Shell 1)、Shell介绍:Shell就是用户与操作系统内核之间的接口,起着协调用户与系统的一致性和在用户与系统之间进行交互的作用。Shell在Linux 系统中具有极其重要的地位。Shell最重要的功能是命令解释,从这种意义上说,Shell是一个命令解释器。Linux系统中所有可执行文件都可以

作为Shell命令来执行。Red Hat Linux默认的Shell是bash。 2)、Linux系统中可执行文件的分类 5、命令格式、通配符和文件 1)、命令格式 cmd [-option] [arguments] 2)、在Linux环境下,只要是可执行的文件并具有可执行属性它就能执行,不管其文件名后缀是什么。 3)、常用设备文件说明 4)、常用通配符 * 匹配任何字符和任何数目的字符例如,ls *.c ? 匹配任何单字符例如,ls test?.c […] 匹配任何包含在括号里的单字符例如,ls [abc]t.c 6、获取帮助 man command_name info command_name 二、文件目录操作命令 1、常用的文件目录操作命令

Linux常用命令大全.pdf

Linux常用命令学习 1、ls命令 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息等等 常用参数搭配: ls -a 列出目录所有文件,包含以.开始的隐藏文件 ls -A 列出除.及..的其它文件 ls -r 反序排列 ls -t 以文件修改时间排序 ls -S 以文件大小排序 ls -h 以易读大小显示 ls -l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来 实例: (1) 按易读方式按时间反序排序,并显示文件详细信息 ls -lhrt (2) 按大小反序显示文件详细信息 ls -lrS (3)列出当前目录中所有以“t”开头的目录的详细内容 ls -l t* (4) 列出文件绝对路径(不包含隐藏文件) ls | sed "s:^:`pwd`/:" (5) 列出文件绝对路径(包含隐藏文件) find $pwd -maxdepth 1 | xargs ls -ld 2、cd命令 (changeDirectory),命令语法:cd [目录名]。说明:切换当前目录至dirName 实例: (1)进入要目录 cd /

(2)进入"家"目录 cd ~ (3)进入上一次工作路径 cd - (4)把上个命令的参数作为cd参数使用。 cd !$ 3、pwd命令 查看当前工作目录路径 实例: (1)查看当前路径 pwd (2)查看软链接的实际路径 pwd -P 4、mkdir命令 创建文件夹 可用选项: -m: 对新建目录设置存取权限,也可以用chmod命令设置; -p: 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不在的目录,即一次可以建立多个目录; 实例: (1)当前工作目录下创建名为t的文件夹 mkdir t (2)在tmp目录下创建路径为test/t1/t的目录,若不存在,则创建 mkdir -p /tmp/test/t1/t 5、rm命令 删除一个目录中的一个或多个文件或目录,如果没有使用- r选项,则rm不会删除目录。如果使用rm 来删除文件,通常仍可以将该文件恢复原状 rm [选项] 文件… 实例:

linux命令详解:pgrep命令

linux命令详解:pgrep 前言 经常要查看进程的信息,包括进程的是否已经消亡,通过pgrep来获得正在被调度的进程的相关信息。pgrep通过匹配其程序名,找到匹配的进程 重要选项 -l 同时显示进程名和PID -o 当匹配多个进程时,显示进程号最小的那个 -n 当匹配多个进程时,显示进程号最大的那个 注:进程号越大,并不一定意味着进程的启动时间越晚 使用说明 查看指定名称的进程信息 默认只显示PID 1: [root@master ~]# pgrep ssh 2: 3686 3: 7907 4: 8815 5: 12874 同时显示PID和ProcessName : –l 1: [root@master ~]# pgrep -l sshd 2: 3686 sshd 3: 7907 sshd 4: 8815 sshd 5: 12874 sshd -o 当匹配多个进程时,显示进程号最小的那个 1: [root@master ~]# pgrep -l sshd 2: 3686 sshd 3: 7907 sshd 4: 8815 sshd 5: 12874 sshd 6: [root@master ~]# pgrep -l -o sshd 7: 3686 sshd -n 当匹配多个进程时,显示进程号最大的那个 1: [root@master ~]# pgrep -l -n sshd 2: 12874 sshd 特别说明 1)pgrep相当于ps –eo pid,cmd | awk ‘{print $1,$2}’ | grep KeyWord 1: [root@master ~]# ps -eo pid,cmd | awk '{print $1,$2}' | grep init 2: 1 init 3: [root@master ~]# pgrep init 4: 1

grep命令详解

grep用法详解:grep与正则表达式 首先要记住的是: 正则表达式与通配符不一样,它们表示的含义并不相同! 正则表达式只是一种表示法,只要工具支持这种表示法,那么该工具就可以处理正则表达式的字符串。vim、grep、awk 、sed 都支持正则表达式,也正是因为由于它们支持正则,才显得它们强大;在以前上班的公司里,由于公司是基于web的服务型网站(nginx),对正则的需求比较大,所以也花了点时间研究正则,特与大家分享下: 1基础正则表达式 grep 工具,以前介绍过。 grep -[acinv] '搜索内容串' filename -a 以文本文件方式搜索 -c 计算找到的符合行的次数 -i 忽略大小写 -n 顺便输出行号 -v 反向选择,即找没有搜索字符串的行 其中搜索串可以是正则表达式! 1 搜索有the的行,并输出行号 $grep -n 'the' regular_express.txt 搜索没有the的行,并输出行号 $grep -nv 'the' regular_express.txt 2 利用[]搜索集合字符

[] 表示其中的某一个字符,例如[ade] 表示a或d或e woody@xiaoc:~/tmp$ grep -n 't[ae]st' regular_express.txt 8:I can't finish the test. 9:Oh! the soup tast e good! 可以用^符号做[]内的前缀,表示除[]内的字符之外的字符。 比如搜索oo前没有g的字符串所在的行. 使用'[^g]oo' 作搜索字符串woody@xiaoc:~/tmp$ grep -n '[^g]oo' regular_express.txt 2:apple is my favorite foo d. 3:Foo tball game is not use feet only. 18:google is the best too ls for search keyword. 19:go ooo oogle yes! [] 内可以用范围表示,比如[a-z] 表示小写字母,[0-9] 表示0~9的数字, [A-Z] 则是大写字母们。[a-zA-Z0-9]表示所有数字与英文字符。当然也可以配合^来排除字符。 搜索包含数字的行 woody@xiaoc:~/tmp$ grep -n '[0-9]' regular_express.txt 5:However ,this dress is about $ 3183 dollars. 15:You are the best is menu you are the no.1. 行首与行尾字符^ $. ^ 表示行的开头,$表示行的结尾( 不是字符,是位置)那么‘^$’ 就表示空行,因为只有 行首和行尾。 这里^与[]里面使用的^意义不同。它表示^后面的串是在行的开头。 比如搜索the在开头的行 woody@xiaoc:~/tmp$ grep -n '^the' regular_express.txt 12:the symbol '*' is represented as star. 搜索以小写字母开头的行 woody@xiaoc:~/tmp$ grep -n '^[a-z]' regular_express.txt

cat和grep指令

cat命令 功能1: 在标准输出上显示文件。 语法:cat [选项] 文件 说明:该命令功能之一是用来显示文件。它依次读取其后所指文件的内容并将其输出到标准输出。 该命令的各选项含义如下: -v 用一种特殊形式显示控制字符,LFD与TAB除外。 加了-v 选项后,-T 和-E 选项将起作用。其中: -T 将TAB显示为“ùI”。该选项需要与-v 选项一起使用。即如果没有使用-v 选项,则这个选项将被忽略。 -E 在每行的末尾显示一个$符。该选项需要与-v 选项一起使用。 -u 输出不经过缓冲区。 -A 等于-vET。 -t 等于-vT。 -e 等于-vE。 -n 在文件的每行前面显示行号。 指令实例: cat example.txt // 则在屏幕上显示出example.txt 文件的内容 cat -A exam2.txt // 在屏幕上显示出exam2.txt 文件的内容,而且如果文件中含有特殊字符的话,一并显示 功能2:连接两个或多个文件 说明:该命令功能之二是用来将两个或多个文件连接起来。 cat file1 file2 > file3 // 这样就把文件filel和文件file2的内容合并起来,放入文件file3中。 (此时在屏幕上并不能直接看到该命令执行后的结果。若想看到连接后的文件内容, 可以再使用“cat file3”。) 需要说明的是,当文件内容过多时,就带来一个问题,因为文本在屏幕上迅速地闪过,用户来不及看清其内容。因此,当文件内容较大时,一般可用more等命令分屏显示,以免因屏幕滚动太快而无法看清。 linux grep命令

1.作用 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。 2.格式 grep [options] 3.主要参数 [options]主要参数: -c:只输出匹配行的计数。 -I:不区分大小写(只适用于单字符)。 -h:查询多文件时不显示文件名。 -l:查询多文件时只输出包含匹配字符的文件名。 -n:显示匹配行及行号。 -s:不显示不存在或无匹配文本的错误信息。 -v:显示不包含匹配文本的所有行。 pattern正则表达式主要参数: \:忽略正则表达式中特殊字符的原有含义。 ^:匹配正则表达式的开始行。 $: 匹配正则表达式的结束行。 \<:从匹配正则表达式的行开始。 \>:到匹配正则表达式的行结束。 [ ]:单个字符,如[A]即A符合要求。 [ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求。 。:所有的单个字符。 * :有字符,长度可以为0。 4.grep命令使用简单实例 $ grep ‘test’ d* 显示所有以d开头的文件中包含test的行。 $ grep ‘test’ aa bb cc 显示在aa,bb,cc文件中匹配test的行。 $ grep ‘[a-z]\{5\}’ aa 显示所有包含每个字符串至少有5个连续小写字符的字符串的行。 $ grep ‘w\(es\)t.*\1′aa 如果west被匹配,则es就被存储到内存中,并标记为1,然后搜索任意个字符(.*),这些字符后面紧跟着另外一个es(\1),找到就显示该行。如果用egrep或grep -E,就不用”\”号进行转义,直接写成’w(es)t.*\1′就可以了。 5.grep命令使用复杂实例 假设您正在’/usr/src/Linux/Doc’目录下搜索带字符串’magic’的文件: $ grep magic /usr/src/Linux/Doc/* sysrq.txt:* How do I enable the magic SysRQ key? sysrq.txt:* How do I use the magic SysRQ key? 其中文件’sysrp.txt’包含该字符串,讨论的是SysRQ 的功能。 默认情况下,’grep’只搜索当前目录。如果此目录下有许多子目录,’grep’会以如下形式列出:

Linux进程管理命令详解16页word文档

Linux进程管理命令详解 Linux进程管理命令详解2010-10-08 14:124.3 Linux进程管理命令详解(1) Linux管理进程的最好方法就是使用命令行下的系统命令。Linux 下面的进程涉及的命令有 at,bg,fg,kill,crontab,jobs,ps,pstree,top,nice,renice,sleep,nohu p。 1.at命令:定时运行命令 作用:at命令在指定时刻执行指定的命令序列。 格式: at[-V][-q x][-f file][-m]time atq[-V][-q x] atrm[-V][-q x]job… batch[-V][-f file][-m] 主要选项如下。 -V:显示作业将被执行的时间。 -q:选用q参数则可选队列名称,队列名称可以是a~z和A~Z之间的任意字母。队列字母顺序越高则队列优先级别越低。 -f:从文件中读取命令或shell脚本,而非在提示后指定它们。 -m:执行完作业后发送电子邮件到用户。 time:设定作业执行的时间。time参数可以是下面格式中的任何一种。 HH:MM格式--如04:00,代表4:00AM。如果时间已过,就会在第二天的这一时间执行。 midnight代表12:00AM。noon代表12:00PM。teatime代表4:00PM。 英文月名日期年份格式--如January 15 2005,代表2005年1月15日。年份可无。 MMDDYY、MM/DD/YY或MM.DD.YY格式--如011505,代表2005年1月15日。

now+时间格式--时间以minutes、hours、days或weeks为单位。如now+5 days,代表命令应该在5天之后的此时此刻执行。偏移量的格式为时间+偏移量,单位是minutes、hours和days。 说明:at命令实际上是一组命令集合。at命令在指定时刻执行指定的命令序列。atq查询已经设定的命令序列。atrm删除已经设定的命令序列。batch当系统负载低于一个设定值(0.8),执行设定的命令序列。 应用实例如下。 (1)让系统在两天后的17:30执行文件data中指定的作业,使用命令: #at-f data 15:30+2 days (2)配置batch作业 要在系统平均载量降到0.8以下时执行某项一次性的任务,使用batch命令。键入batch命令后,"at"提示就会出现。键入要执行的命令,按"Enter"键,然后键入"Ctrl-D"。你可以指定多条命令,方法是键入每一条命令后按"Enter"键。键入所有命令后,按"Enter"键转入一个空行,然后再键入"Ctrl-D"。或者你也可以在提示后输入shell脚本,在脚本的每一行后按"Enter"键,然后在空行处键入"Ctrl-D"来退出。系统平均载量一降到0.8以下,这组命令或脚本就会被执行。如果这组命令或脚本试图在标准输出中显示信息,该输出会用电子邮件方式被邮寄给用户。 (3)进阶应用:控制对at和batch的使用 通过/etc/at.allow和/etc/at.deny文件可以用来限制对at和batch命令的使用。这两个使用控制文件的格式都是每行一个用户。两个文件都不允许使用空白字符。如果控制文件被修改了,at守护进程不必被重启。每次用户试图执行at或batch命令时,使用控制文件都会被读取。不论控制文件如何规定,超级权限用户总是可以执行at和batch 命令。如果at.allow文件存在,只有其中列出的用户才能使用at或batch命令,at.deny文件会被忽略。如果at.allow文件不存在,所有在at.deny文件中列出的用户都被禁止使用at和batch命令。 2.bg命令后台运行命令

Linux常用命令详解(配合示例说明,清晰易懂)

Linux常用命令详解 (常用、详细) BISTU 自动化学院 刷碗小工(frisen.imtm) 2010年11月 开源社区,造福大家,版权所有,翻录不究(初次接触Linux命令可能对以下说明有不少疑问,可待看完一遍后再回头细看) (配合Ctrl + F可快速查找你想了解的命令)

索引:(待完善) 文件说明:Linux命令很多,但最常用的80个左右 文档内容充实,用示例说明命令如何使用笔者力求语言简洁,清晰易懂 由于忙于其他事情,改进排版的工作只能搁置了 最后,望此文档能为大家Linux学习之路献微薄之力 一、路径: 执行命令前必须要考虑的一步是命令的路径,若是路径错误或是没有正确的指定,可能导致错误的执行或是找不到该命令。要知道设置的路径,可执行以下命令: 一般而言,本书的命令位于/bin、usr/bin、/sbin、/usr/sbin之中。若读者执行了命令却出现“command not find”或是“命令不存在”的字样,就必须要确定该命令的位置是否在命令的路径中,或是系统上根本没有安装该套件。 二、命令顺序: 若在shell内置的命令/bin以及/usr/bin之下都出现了命令pwd,那当我们执行该命令时,会执行哪一个?答案是第一优先执行shell内置的命令,再执行路径中的设置;因此若有相同名称的命令时,必须要注意顺序设置,或是直接输入完整路径。 三、参数(或称选项)顺序: 一般除了特殊情况,参数是没有顺序的。举例而言,输入“–a –v”与输入“–v –a”以及“–av”的执行效果是相同的。但若该参数后指定了要接的文件或特殊对象,如“–a cmd1 –v cmd2”,则不能任意改变选项顺序。 四、常用参数: 下面所列的是常见的参数(选项)意义: --help,-h 显示帮助信息 --version,-V 显示版本信息 -v 繁琐模式(显示命令完整的执行过程) -i 交谈模式(指定界面) -l 长列表输出格式 -q,-s 安静模式(不显示任何输出或错误信息) -R 递归模式(连同目录下所有文件和子目录一起处理) -z 压缩 五、命令的结合与定向: 命令中除了一般命令外,还有管道(或称途径)(|)与定向(>或>>)。 管道(途径)的用法: “命令一[选项]”| “命令二[选项]”,也就是将“命令一[选项]”的输出结果传到“命令二[选项]”,通过命令二的处理之后才输出到标准输出(屏幕)上。比如“ls /etc”会列出etc下的所有文件,若加上“| less”,也就是“ls /etc | less”,则会将“ls /etc”的结果通过less分页输出。 定向的用法: 将结果定向到命令的输出设备,一般不加文件名意为将结果输出到屏幕,若是在定向后加上文件名,则会将命令的执行结果输出到定向的文件,例如“ls > temp.txt”,就会将ls 的结果输出到文件temp.txt中。“>”与“>>”的差异在于前者是覆盖,而后者是附加。 六、命令中的命令: 许多命令在执行后,会进入该命令的操作模式,如fdisk、pine、top等,进入后我们必须要使用该命令中的命令,才能正确执行;而一般要退出该命令,可以输入exit、q、quit或是按【Ctrl+C】组合

linux中目录.文件命令详解

linux中ls命令详解 linux中ls命令详解 ls 命令可以说是linux下最常用的命令之一。 -a 列出目录下的所有文件,包括以 . 开头的隐含文件。 -b 把文件名中不可输出的字符用反斜杠加字符编号(就象在C语言里一样)的形式列出。-c 输出文件的 i 节点的修改时间,并以此排序。 -d 将目录象文件一样显示,而不是显示其下的文件。 -e 输出时间的全部信息,而不是输出简略信息。 -f -U 对输出的文件不排序。 -g 无用。 -i 输出文件的 i 节点的索引信息。 -k 以 k 字节的形式表示文件的大小。 -l 列出文件的详细信息。 -m 横向输出文件名,并以“,”作分格符。 -n 用数字的 UID,GID 代替名称。 -o 显示文件的除组信息外的详细信息。 -p -F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通 文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套 接字(sockets)。 -q 用?代替不可输出的字符。 -r 对目录反向排序。 -s 在每个文件名后输出该文件的大小。 -t 以时间排序。 -u 以文件上次被访问的时间排序。 -x 按列输出,横向排序。 -A 显示除“.”和“..”外的所有文件。 -B 不输出以“~”结尾的备份文件。

-C 按列输出,纵向排序。 -G 输出文件的组的信息。 -L 列出链接文件名而不是链接到的文件。 -N 不限制文件长度。 -Q 把输出的文件名用双引号括起来。 -R 列出所有子目录下的文件。 -S 以文件大小排序。 -X 以文件的扩展名(最后一个 . 后的字符)排序。 -1 一行只输出一个文件。 --color=no 不显示彩色文件名 --help 在标准输出上显示帮助信息。 --version 在标准输出上输出版本信息并退出。 只列出子目录 1. ls -F | grep /$ 或者 alias sub = "ls -F | grep /$"(linux) 2. ls -l | grep "^d" 或者 ls -lL | grep "^d" (Solaris) 计算当前目录下的文件数和目录数 下面命令可以分别计算当前目录下的文件和目录个数: # ls -l * |grep "^-"|wc -l ---- to count files # ls -l * |grep "^d"|wc -l ----- to count dir 显示彩色目录列表 打开/etc/bashrc, 加入如下一行: alias ls="ls --color" 下次启动bash时就可以像在Slackware里那样显示彩色的目录列表了, 其中颜色的含义如下: 1. 蓝色-->目录 2. 绿色-->可执行文件 3. 红色-->压缩文件

Linux基本命令大全

下面我们来介绍常用基本命令 一、注销,关机,重启 注销系统的logout命令 1,Logout 注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达logout命令即可: [root@localhost root]#logout Red Hat Linuxrelease 9(Shike) Kernel 2.4.20.8 on an i686 Login: ←回到登陆的画面 2,关机或重新启动的shutdown命令 Shutdown命令可以关闭所有程序,依照用户的需要,重新启动或关机。 参数说明如下: λ立即关机:-h 参数让系统立即关机。范例如下: [root@localhost root]#shutdown –h now ←要求系统立即关机 λ指定关机时间:time参数可指定关机的时间;或设置多久时间后运行shutdown命令,范例如下: [root@localhost root]#shutdown now ←立刻关机 [root@localhost root]#shutdown +5 ←5分钟后关机 [root@localhost root]#shutdown 10:30 ←在10:30时关机 关机后自动重启:-rλ参数设置关机后重新启动。范例如下: [root@localhost root]#shutdown -r now ←立刻关闭系统并重启 [root@localhost root]#shutdown -r 23:59 ←指定在23:59时重启动 3,重新启动计算机的reboot命令 顾名思义,reboot命令是用来重新启动系统的。常用的参数如下: λ-f 参数:不依正常的程序运行关机,直接关闭系统并重新启动计算机。 -Iλ参数:在在重新启动之前关闭所有网络接口。 虽然reboot命令有个参数可以使用,但是一般只需要单独运行reboot命令就可以了 二、文件与目录的操作 列出文件列表的ls命令 1,ls(list)命令是非常有用的命令,用来显示当前目录中的文件和子目录列表。配合参数的使用,能以不同的方式显示目录内容。范例如下: ? 显示当前目录的内容: [tony@free tony]$ ls Desktop mail myinstall.log test.txt ←有两个目录及两个文件夹 ? 当运行ls命令时,并不会显示名称以―.‖开头的文件。因此可加上―-a‖参数指定要列出这些文件。范例如下: [tony@free tony]$ ls –a ? 以―-s‖参数显示每个文件所有的空间,并以―-S‖参数指定按所有占用空间的大小排序。范例如下: [tony@free tony]$ ls –s –S 总计36 4 Desktop 4 mail 24 myinstall.log 4 test.txt ? 在ls命令后直接加上欲显示的目录路径,就会列出该目录的内容。范例如下: [tony@free tony]$ ls –l/usr/games 2,切换目录的cd命令

Linux grep命令的使用用法

Linux Grep用法 QUOTE: 原帖由"网中人" 发表: 比方以grep 来说, 在Linux 上你可找到grep, egrep, fgrep 这几个程序, 其差异大致如下: * grep: 传统的grep 程序, 在没有参数的情况下, 只输出符合RE 字符串之句子. 常见参数如下: -v: 逆反模示, 只输出"不含" RE 字符串之句子. -r: 递归模式, 可同时处理所有层级子目录里的文件. -q: 静默模式, 不输出任何结果(stderr 除外. 常用以获取return value, 符合为true, 否则为false .) -i: 忽略大小写. -w: 整词比对, 类似\ . -n: 同时输出行号. -c: 只输出符合比对的行数. -l: 只输出符合比对的文件名称. -o: 只输出符合RE 的字符串. (gnu 新版独有, 不见得所有版本都支持.) -E: 切换为egrep . * egrep: 为grep 的扩充版本, 改良了许多传统grep 不能或不便的操作. 比方说: - grep 之下不支持? 与+ 这两种modifier, 但egrep 则可. - grep 不支持a|b 或(abc|xyz) 这类"或一"比对, 但egrep 则可. - grep 在处理{n,m} 时, 需用\{ 与\} 处理, 但egrep 则不需. 诸如此类的... 我个人会建议能用egrep 就不用grep 啦... ^_^ * fgrep: 不作RE 处理, 表达式仅作一般字符串处理, 所有meta 均失去功能. g r e p一般格式为: ][ - ] CODE: grep [选项]基本正则表达式[文件] 这里基本正则表达式可为字符串。 单引号双引号 在g r e p命令中输入字符串参数时,最好将其用双引号括起来。 在调用模式匹配时,应使用单引号。 例如:“m y s t r i n g”。这样做有两个原因,一是以防被误解为s h e l l命令,二是可以用来查找多个单词组成的字符串。在调用变量时,也应该使用双引号,诸如:g r e p“$ M Y VA R”文件名,如果不这样,将没有返回结果。 常用的g r e p选项有: QUOTE: -c 只输出匹配行的计数。 -i 不区分大小写(只适用于单字符)。 -h 查询多文件时不显示文件名。

Grep命令详解

Grep命令详解 grep [ -E | -F ] [ -i ] [ -h ] [ -s ] [ -v ] [ -w ] [ -x ] [ -y ] [ [ [ -b ] [ -n ] ] | [ -c | -l | -q ] ] [ -p [ Separator ] ] { [ -e PatternList ... ] [ -f PatternFile ... ] | PatternList ... } [ 文件... ] 描述 grep 命令用于搜索由Pattern参数指定的模式,并将每个匹配的行写入标准输出中。这些模式是具有限定的正则表达式,它们使用ed或egrep命令样式。grep命令使用压缩的不确定算法。 如果在File参数中指定了多个名称,grep命令将显示包含匹配行的文件的名称。对shell 有特殊含义的字符($, *, [, |, ^, (, ), \ ) 出现在Pattern 参数中时必须带双引号。如果Pattern参数不是简单字符串,通常必须用单引号将整个模式括起来。在诸如[a-z], 之类的表达式中,-(减号)cml 可根据当前正在整理的序列来指定一个范围。整理序列可以定义等价的类以供在字符范围中使用。如果未指定任何文件,grep 会假定为标准输入。 注意: 1.行被限制为2048个字节。 2.段落(使用-p标志时)长度当前被限制为5000个字符。 3.请不要对特殊文件运行grep命令,这样做可能产生不可预计的结果。 4.输入行不应包含空字符。 5.输入文件应该以换行符作为结束。 6.正则表达式不会对换行符进行匹配。 7.虽然一些标志可以同时被指定,但其中的某些标志会覆盖其它标志。例如,-l选项将优先于所有其它标志。另外,如果您同时指定了-E 和-F标志,则后指定的那个会有优先权。 标志 -b 在每行之前添加找到该行时所在的块编号。使用这个标志有助于通过上下文来找到磁盘块号码。-b标志不能用于来自标准输入和管道的输入。 -c 仅显示匹配行的计数。

zip压缩命令详解

语法:unzip 〔选项〕压缩文件名.zip 各选项的含义分别为: -x 文件列表解压缩文件,但不包括指定的file文件。 -v 查看压缩文件目录,但不解压。 -t 测试文件有无损坏,但不解压。 -d 目录把压缩文件解到指定目录下。 -z 只显示压缩文件的注解。 -n 不覆盖已经存在的文件。 -o 覆盖已存在的文件且不要求用户确认。 -j 不重建文档的目录结构,把所有文件解压到同一目录下。 例1:将压缩文件text.zip在当前目录下解压缩。 $ unzip text.zip 例2:将压缩文件text.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,要求unzip命令不覆盖原先的文件。 $ unzip -n text.zip -d /tmp 例3:查看压缩文件目录,但不解压。 $ unzip -v text.zip zgrep命令 这个命令的功能是在压缩文件中寻找匹配的正则表达式,用法和grep命令一样,只不过操作的对象是压缩文件。如果用户想看看在某个压缩文件中有没有某一句话,便可用zgrep命令。 linux zip命令zip -r myfile.zip ./*

\将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzip unzip -o -d /home/sunny myfile.zip 把myfile.zip文件解压到 /home/sunny/ -o:不提示的情况下覆盖文件; -d:-d /home/sunny 指明将文件解压缩到/home/sunny目录下; 3.其他 zip -d myfile.zip smart.txt 删除压缩文件中smart.txt文件 zip -m myfile.zip ./rpm_info.txt 向压缩文件中myfile.zip中添加rpm_info.txt文件 ------------------------------------------------------------------------------- 要使用 zip 来压缩文件,在 shell 提示下键入下面的命令: zip -r filename.zip filesdir 在这个例子里,filename.zip 代表你创建的文件,filesdir 代表你想放置新 zip 文件的目录。 -r 选项指定你想递归地(recursively)包括所有包括在 filesdir 目录中的文件。 要抽取 zip 文件的内容,键入以下命令: unzip filename.zip 你可以使用 zip 命令同时处理多个文件和目录,方法是将它们逐一列出,并用空格间隔:zip -r filename.zip file1 file2 file3 /usr/work/school 上面的命令把 file1、file2、 file3、以及 /usr/work/school 目录的内容(假设这个目录存在)压缩起来,然后放入 filename.zip 文件中。 tar 命令详解 -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。 下面的参数是根据需要在压缩或解压档案时可选的。 -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件

Red_Hat_Linux常用命令汇总

[资料] Red Hat Linux常用命令汇总 Linux 常用命令汇总 ls命令: 1. ls //列出当前目录的文件和文件夹 2. ls –a //列出当前目录的文件和文件夹,包含隐藏文件 3. ls –l //列出详细信息 4. ls 目录 //列出某目录下的文件 pwd命令 //查看当前所在位置 du 命令 1. du 目录 //查看目录的总容量以及子目录的容量 2. du –s 目录 //查看目录总容量 cd 命令 1.cd .. //回上一级目录 2.cd / //回根目录 3. cd //回用户主目录 4.cd 目录路径 //去某目录 mkdir 目录名 //创建目录 rmdir 空目录名 //删除空目录 rm 文件名 //删除文件 rm –rf 目录名 //删除目录以及目录下所有文件 mount 命令 1.mount /dev/cdrom /mnt/cdrom //挂载光驱到 /mnt/cdrom目录下2.mount -t vfat /dev/sda1 /mnt/u //挂载U盘到 /mnt/u目录下

3. umount /mnt/cdrom //卸载光驱 fdisk –l //查看本机存储设备 file 文件名 //查看文件类型 find 目录名–name “*.c” //在某目录下查找文件为*.c的文件 whereis 文件名 //查找文件在哪些目录下 cat 文件名 //显示文件内容 cat 文件名 | grep 文字 //只显示包含文字相关的内容 cat 文件名 | more //分页显示文件内容 tail 文件名 //查看文件末尾 head 文件名 //从头查看文件 cp 命令: cp 文件1 文件2 //复制文件1 到文件2 cp 文件1 目录1 //复制文件1到目录1下 cp 目录1/文件1 目录2 //复制目录1下的文件1到目录2下 cp –r 目录1 目录2 //复制目录1下所有内容到目录2 mv 命令: mv 文件1 文件2 //重命名文件1为文件2 mv 文件1 目录1 //移动文件1到目录1下 mv 目录1/文件1 目录2 //移动目录1下的文件1到目录2下 mv –r 目录1 目录2 //移动目录1下所有内容到目录2 chmod 命令: chmod u+x g+r o-w 文件名 //为文件设置权限(用户,组,其他人)chmod 744 文件名 //为文件设置权限(1-执行,2-写,4-读) chown 命令: chown 用户文件名 //把文件改为用户所有

Genesis2000脚本编写常用命令解析

1. switch 的用法,注意每一个case 必须要以breaksw 结尾 否则会继续执行下一个case 的命令 (1) 另外,$< 的意思是取得使用者的stand input (2) echo 若加上-n 的选项,则游标会停留在该行最后 echo -n "Input one color: " set STOPLIGHT = $< switch ($STOPLIGHT) case red: echo "red" breaksw case orange: echo "orange" breaksw case green: echo "green" breaksw default: echo "you input $STOPLIGHT" endsw -------------------------------------------------------------------- 2. 利用set 来取得变数,set ABC = "I am ABC" 也可以利用`command` 来取得命令 且外,case 也可以用万用字元* 来代替 set VER = `uname -r` switch ($VER) case 5.5: echo "run the setup of $VER" breaksw case 5.3: echo "run the setup of $VER" breaksw case 5.*: echo "like 5.x" breaksw case 4.*: echo "like 4.x" breaksw default: echo "no idea" endsw

相关文档
最新文档