红联Linux门户
Linux帮助

Linux中grep命令用法详解

发布时间:2014-11-08 21:59:50来源:linux网站作者:linux人

查找特定字符串并颜色显示
[root@ linux]# grep -n 'the' regular_express.txt --color=auto
8:I can't finish the test.
12:the symbol '*' is represented as start.
15:You are the best is mean you are the no. 1.
16:The world <Happy> is the same with "glad".
18:google is the best tools for search keyword.


反向选择查找特定字符串并颜色显示

[root@ linux]# grep -vn 'the' regular_express.txt --color=auto
1:"Open Source" is a good mechanism to develop programs.
2:apple is my favorite food.
......


忽略大小写查找特定的字符

[root@ linux]#  grep -in 'the' regular_express.txt


使用 [] 来查找集合字符:

[root@ linux]# grep -n 't[ae]st' regular_express.txt
8:I can't finish the test.
9:Oh! The soup taste good.


查找有‘oo’字符串

[root@ linux]# grep -n 'oo' regular_express.txt
1:"Open Source" is a good mechanism to develop programs.
2:apple is my favorite food.
3:Football game is not use feet only.
9:Oh! The soup taste good.
18:google is the best tools for search keyword.
19:goooooogle yes!


查找有‘oo’字符串,但是不要前面有g的,即剔除goo

[root@ linux]# grep -n '[^g]oo' regular_express.txt
2:apple is my favorite food.
3:Football game is not use feet only.
18:google is the best tools for search keyword.
19:goooooogle yes!


查找非小写字母加oo的内容

[root@ linux]# grep -n '[^a-z]oo' regular_express.txt
3:Football game is not use feet only.


获取有数字的一行

[root@ linux]# grep -n '[0-9]' regular_express.txt
5:However, this dress is about $ 3183 dollars.
15:You are the best is mean you are the no. 1.

[root@ linux]# grep -n '[^[:lower:]]oo' regular_express.txt
3:Football game is not use feet only.


查询以the开头的字符

[root@ linux]# grep -n '^the' regular_express.txt
12:the symbol '*' is represented as start.


查询开头是小写字母的内容

[root@ linux]# grep -n '^[a-z]' regular_express.txt
2:apple is my favorite food.
4:this dress doesn't fit me.
10:motorcycle is cheap than car.
12:the symbol '*' is represented as start.
18:google is the best tools for search keyword.
19:goooooogle yes!
20:go! go! Let's go.


查询第一个字符不是大写的

[root@ linux]# grep -n '^[[:lower:]]' regular_express.txt
2:apple is my favorite food.
4:this dress doesn't fit me.
10:motorcycle is cheap than car.
12:the symbol '*' is represented as start.
18:google is the best tools for search keyword.
19:goooooogle yes!
20:go! go! Let's go.


查询不是以英文开头的字符

[root@ linux]# grep -n '^[^a-zA-Z]' regular_express.txt
1:"Open Source" is a good mechanism to develop programs.
21:# I am VBird


查询结尾是小数点的行的内容.

[root@ linux]# grep -n '\.$' regular_express.txt
1:"Open Source" is a good mechanism to develop programs.
2:apple is my favorite food.
3:Football game is not use feet only.
4:this dress doesn't fit me.
10:motorcycle is cheap than car.
11:This window is clear.
12:the symbol '*' is represented as start.
15:You are the best is mean you are the no. 1.
16:The world <Happy> is the same with "glad".
17:I like dog.
18:google is the best tools for search keyword.
20:go! go! Let's go.


查找“空白行”

[root@ linux]# grep -n '^$' regular_express.txt
22:


通配符.和*的使用,.(小数点)代表一定有一个任意字符,*代表重复前一个到无穷多次的意思

[root@ linux]# grep -n 'g..d' regular_express.txt
1:"Open Source" is a good mechanism to develop programs.
9:Oh! The soup taste good.
16:The world <Happy> is the same with "glad".


查询出现任意数字的行列

[root@ linux]# grep -n '[0-9][0-9]*' regular_express.txt
5:However, this dress is about $ 3183 dollars.
15:You are the best is mean you are the no. 1.


查询出现两个o的字符串

[root@ linux]# grep -n 'o\{2\}' regular_express.txt
1:"Open Source" is a good mechanism to develop programs.
2:apple is my favorite food.
3:Football game is not use feet only.
9:Oh! The soup taste good.
18:google is the best tools for search keyword.
19:goooooogle yes!


查询出现2-5个o的字符串,后面在接一个g的字符串

[root@ linux]# grep -n 'o\{2,5\}g' regular_express.txt
18:google is the best tools for search keyword.
19:goooooogle yes!


查询出现2个以上o的字符串,后面在接一个g的字符串

[root@ linux]# grep -n 'o\{2,\}g' regular_express.txt
18:google is the best tools for search keyword.
19:goooooogle yes!