15-grep 简明笔

在文件中搜索模式

grep [optionspattern [file-list]

 

参数

pattern为正则表达式,file-listgrep要搜索的普通文本文件的路径名列表

 

选项

-c                    只显示每个文件中包含匹配模式的行数

-v                    显示不包含匹配模式的行

-i                     忽略大小写

-a                    在二进制文件中,以文本文件的方式搜索数据

-o                    仅显示出匹配regexp的内容(用户统计出现在文件中的次数)

-n                    匹配的内容在其行首显示行号

-E                    扩展的grep,即egrep

-color=auto       以特定颜色高亮显示匹配关键字

-A       after的意思, 显示匹配字符串及其后n行的数据


-B       before, 显示匹配字符串及其前n行的数据


-C       context 显示匹配字符串及其前后各num行


-w       接单词搜索,相当于\b。

 

示例

原文件

 1 $ cat testa
 2 aaabb
 3 bbbcc
 4 ff-ff
 5 cccdd
 6 dddaa
 7 $ cat testb
 8 aaaaa
 9 bbbbb
10 ccccc
11 ddddd
12 $ cat testc
13 AAAAA
14 BBBBB
15 CCCCC

 

grep

1 $ grep bb testa
2 aaabb
3 bbbcc

 

在testa中搜索包含字符串bb的行

 

grep -v

1 $ grep -v bb testa
2 ff-ff
3 cccdd
4 dddaa

 

在testa中搜索不包含匹配字符串的行

 

grep -n

1 $ grep -n bb testa
2 1:aaabb
3 2:bbbcc

 

显示匹配行的行号

 

grep *

1 $ grep bb *
2 testa:aaabb
3 testa:bbbcc
4 testb:bbbbb

 

搜索多个文件中的匹配项

 

grep -i

 1 $ grep -i bb *
 2 testa:aaabb
 3 testa:bbbcc
 4 testb:bbbbb
 5 testc:BBBBB
 6 $ grep -i BB *
 7 testa:aaabb
 8 testa:bbbcc
 9 testb:bbbbb
10 testc:BBBBB

 

不区分大小写匹配

 

grep -c

1 $ grep -c bb *
2 testa:2
3 testb:1
4 testc:0

 

只显示每个文件中匹配的行数

posted @ 2016-12-16 22:10  活的潇洒80  阅读(252)  评论(0)    收藏  举报