就我自己的所学所用在这里小结一下,供大家参考。
(1)-v过滤,是指除去不要的留下想要的。
例:
[[email protected] tmp]# cat daweizong
111
222
333
qqq
rrr
[[email protected] tmp]# grep -v "111" daweizong
222
333
qqq
rrr
注意:大家可以看到文件有的内容,加上-v之后就剩下咱们想要的了。
(2)-i不区分大小写。
例:
[[email protected] tmp]# cat daweizong
111
222
333
qqq
rrr
QQQ
[[email protected] tmp]# grep -i "qqq" daweizong
qqq
QQQ
注意:当加上-i的时候就不区分大小q都取出来。
(3)-n显示你过滤内容和行号。
例:
[[email protected] tmp]# grep -n "qqq" daweizong
4:qqq
注意:这个文件和(2)用的同一个文件,可以看到取出qqq以后同时显示了它的行号,并且没有加-i就只有取出了qqq。
(4)-o只显示过滤的内容。
例:
[[email protected] tmp]# grep -o "111" daweizong
111
注意:文件用的和(2)一样,这里可以看出想要什么直接出来什么,单个字节也可以的,如下:
[[email protected] tmp]# grep -o "1" daweizong
1
1
1
结合需求来用。
(5)--color=auto对显示的内容加颜色。
例:
注意:文件和(2)一样,这里配截图更适合一点,就是对我们想要的内容高亮显示。
(6)-E:相当于egrep,可以用到正则的参数,由于正则比较多,这里暂时就不说明了。(以后会给大家介绍的)
(7)-w:显示有这个内容的那行。
例:
[[email protected] tmp]# cat daweizong
111
222
333
qqq
rrr
QQQ
111ttt
111 ttt
[[email protected] tmp]# grep -w "111" daweizong
111
111 ttt
注意:这里大家要注意了,这个内容后面是数字·字母·下划线则不会被匹配,其他的都能匹配到,这就产生了上面的结果。
(8)-A(after)找到过滤内容之后的N行
-B(before)找到过滤内容之前的N行
-C找到过滤内容前后的N行
例:
[[email protected] tmp]# seq 50 >daweizong
注意:这里来张图便于大家理解。
(9)-c 只输出匹配行的计数(计数输出行的总数)。
例:
[[email protected] tmp]# cat daweizong
111
222
333
qqq
rrr
QQQ
111ttt
111 ttt
[[email protected] tmp]# grep -c "111" daweizong
3
注意:直接统计匹配出内容的行数。
(10)-F搜索文档中的字符串并输出字符串所在行的内容。
-R递归
例:
[[email protected] tmp]# cat daweizong
woshidaweizong
dajiahao
i love you
baby
[[email protected] tmp]# grep -F "wo" daweizong
woshidaweizong
注意:把匹配到内容的行都显示出来。
总结:这里总结的只是我学习和工作中遇到的一些参数和大家分享,如果想学习更多可以直接男人(man)。我只是一个躲在角落里瑟瑟发抖的小运维,写的可能有很多的不足,望大家见谅,大佬轻虐,谢谢大家观看。
原文地址:http://blog.51cto.com/13729967/2320316