linuxgrep用法大全 linux命令大全grep

原文:http://orchidllh.itpub.net/post/4020/24280


在Unix中经常会用到grep去选取所需要的信息,用好grep有时可以到达意想不到的效果。


Grep : g (globally) search for a re (regular expression_r_r ) and p(print ) the results.

1、参数:
-I :忽略大小写
-c :打印匹配的行数
-l :从多个文件中查找包含匹配项
-v :查找不包含匹配项的行
-n:打印包含匹配项的行和行标

2、RE(正则表达式)
忽略正则表达式中特殊字符的原有含义
^ 匹配正则表达式的开始行
$ 匹配正则表达式的结束行
< 从匹配正则表达式的行开始
>; 到匹配正则表达式的行结束
[ ] 单个字符;如[A] 即A符合要求
[ - ] 范围 ;如[A-Z]即A,B,C一直到Z都符合要求
. 所有的单个字符
* 所有字符,长度可以为0

# cat zhao.conf(显示我们所查文件的内容)
48 Dec 3BC1997 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
487 may 5PA1998 USP 37.00 KVM9D 644
471 May 7Zh1999 UDP 37.00 KV30D 643


# grep -c "48" zhao.conf(统计所有以“48”字符开头的行有多少)

# grep -i "May" zhao.conf(不区分大小写查找“May”所有的行)
487 may 5PA1998 USP 37.00 KVM9D 644
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep -n "48" zhao.conf(显示行号;显示匹配字符“48”所在的行的行号)
1:48 Dec 3BC1997 LPSX 68.00 LVX2A 138
2:483 Sept 5AP1996 USP 65.00 LVX2C 189
5:484 nov 7PL1996 CAD 49.00 PLV2C 234
6:487 may 5PA1998 USP 37.00 KVM9D 644

# grep -ni "may" zhao.conf(显示行号;显示匹配字符“may”所在的行的行号,不区分大小写)

# grep -v "48" zhao.conf(显示输出没有字符“48”所有的行)
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
219 dec 2CC1999 CAD 23.00 PLV2C 68
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep "471" zhao.conf(显示输出字符“471”所在的行)
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep "48>" zhao.conf(精确显示输出字符“48”所在的行)
48 Dec 3BC1997 LPSX 68.00 LVX2A 138

# grep "48<tab>"zhao.conf(显示输出以字符“48”开头,并在字符“48”后是一个tab键所在的行
注:tab键,安一下tab键即可;和精确显示输出的结果是相同的)
48 Dec 3BC1997 LPSX 68.00 LVX2A 138

# grep "48[34]"zhao.conf(显示输出以字符“48”开头,第三个字符是“3”或是“4”的所有的行)
483 Sept 5AP1996 USP 65.00 LVX2C 189
484 nov 7PL1996 CAD 49.00 PLV2C 234

# grep '48[34]'zhao.conf(注意使用单引号(‘’)和使用双引号(“”)在Solaris8中输出的结果是一样的;
即:单引号、和双引号是通用的,只要你养成一种习惯就好)
483 Sept 5AP1996 USP 65.00 LVX2C 189
484 nov 7PL1996 CAD 49.00 PLV2C 234

# grep "^[^48]" zhao.conf(显示输出行首不是字符“48”的行)
219 dec 2CC1999 CAD 23.00 PLV2C 68

# grep "[Mm]ay"zhao.conf(设置大小写查找:显示输出第一个字符以“M”或“m”开头,以字符“ay”结束的行)
487 may 5PA1998 USP 37.00 KVM9D 644
471 May 7Zh1999 UDP 37.00 KV30D 643

# cat zhao.conf(再次显示我们所使用的文件的内容)
48 Dec 3BC1997 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
487 may 5PA1998 USP 37.00 KVM9D 644
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep "K...D"zhao.conf(显示输出第一个字符是“K”,第二、三、四是任意字符,第五个字符是“D”所在的行)
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
487 may 5PA1998 USP 37.00 KVM9D 644
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep "[A-Z][A-Z][A-Z][9]D"zhao.conf(显示输出第一个字符的范围是“A-D”,第二个字符的范围是“A-D”,
第三个字符的范围是“A-D”,第四个字符是“9”,第五个字符的是“D”,所有的行:已知所查字符串的长度为5位)
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
487 may 5PA1998 USP 37.00 KVM9D 644

# grep "5..1998" zhao.conf
487 may 5PA1998 USP 37.00 KVM9D 644

# grep "[35]..1998"zhao.conf(显示输出第一个字符是“3”或“5”,第二、三个字符是任意,以1998结尾的所有行;已知所查字符串的长度是7位)
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
487 may 5PA1998 USP 37.00 KVM9D 644
#

# grep "4{2,}" zhao.conf(模式出现几率查找:显示输出字符“4”至少重复出现两次的所有行)
487 may 5PA1998 USP 37.00 KVM9D 644

# grep "9{3,}" zhao.conf(模式出现几率查找:显示输出字符“9”至少重复出现三次的所有行)
219 dec 2CC1999 CAD 23.00 PLV2C 68
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep "9{2,3}" zhao.conf(模式出现几率查找:显示输出字符“9”重复出现的次数在一定范围内(重复出现2次或3次)所有行)
48 Dec 3BC1997 LPSX 68.00 LVX2A 138
483 Sept 5AP1996 USP 65.00 LVX2C 189
linuxgrep用法大全 linux命令大全grep
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
219 dec 2CC1999 CAD 23.00 PLV2C 68
484 nov 7PL1996 CAD 49.00 PLV2C 234
487 may 5PA1998 USP 37.00 KVM9D 644
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep -n "^$" zhao.conf(显示输出空行的行号)

  

爱华网本文地址 » http://www.aihuau.com/a/25101016/291797.html

更多阅读

转 centos6.4下vi的用法大全 centos 6.4 iso下载

【转】:http://blog.csdn.net/xst686/article/details/9833303vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令。由于对Unix及Linux系统的任何版本,v

高考重要英语单词用法 英语单词用法大全

高考知识点概要a great/good many: a large number of许多。修饰可数名词复数。I’m quite busy. I have a great many things to do. 我很忙,我有很多事要做。若复数名词前有限定词或其修饰的为代词时,应加of .①A great many of the

修改Linux命令提示符 linux的命令提示符

Linux修改环境变量PS1(命令行提示符),可以使用vi编辑/etc/profile文件,在最后加上:export PS1='[u@h W]$ '即可,其中u显示当前用户账号,h显示当前主机名,W显示当前路径,$显示'$'符号W 代替 w 就可以实现绝对路径到相对路径的转换下面简单

MAYA2008中英文命令速查手册 linux命令速查手册

《Maya2014命令完全速查手册》放大图片《Maya2014命令完全速查手册》作者:火星时代出版社:人民邮电出版社出版日期:2013年10月ISBN:978-7-115-32958-5定价:168.0016k 黑白印刷读者评分:内容简介

linux命令1 _王帅华RO cad中ro命令

1、rm:删除文件 利用-i选项可以实现删除中的交互(询问是否确认删除)。2、less和more:分屏显示文件 less和more都是分屏显示文件,但是less需要按q键来返回,而more则不需要。3、hostname:显示系统名4、cp -i:可以以交互式的方式来防止用户误

声明:《linuxgrep用法大全 linux命令大全grep》为网友江影沉浮分享!如侵犯到您的合法权益请联系我们删除