grep过滤用法介绍(二)
背景:(1)alias cgrep=‘grep --color’
(2)cp /etc/passwd 1.txt
1、 cgrep -n ‘root’ 1.txt 包含root所在,行数。
2、 cgrep -v 'nologin' 1.txt 不包含nologin。
3、 cgrep '[0-9]' 1.txt 包含所有0-9中间数字包含任意一个的行。
4、 cgrep '[a-zA-Z]' 1.txt 过滤所有字母。
5、cgrep '^[a-z]' 1.txt 过滤以小写字母开头的行。
6、cgrep ‘^[^0-9]’2.txt 与 cgrep -v ‘^[0-9]’2.txt 区别,如下图截图:
[]里面的^表示取非!上例表示不以数字开头的行!
7、如何表示空行,^表示开头 $表示结尾
cgrep '^$' 1.txt 表示空行
8、cgrep -v '^$' 1.txt 空行之外的行
9、必记知识点:
.表示任意一个字符,如:字母,符号,空格,数字,#
*表示零个或多个星号前面的字符,如:r*o 则:o ro rro,。。。
+表示一个或多个加号前面的字符,如:r+o 则:ro rro rrro(egrep使用)
?表示一个或零个问号前面的字符,如:r?o,则:o ro(egrep使用)
.*任意的,贪婪匹配
grep的遍历:grep -r ‘root’ /etc/*
注意:
其中+和?grep不支持,只有egrep支持
grep -E==egrep
本文转自品鉴初心51CTO博客,原文链接:http://blog.51cto.com/wutengfei/1908189,如需转载请自行联系原作者