grep:
传统的 grep 程序, 在没有参数的情况下, 只输出符合 RE 的行. 常见参数如下:
-v: 逆反模式, 只输出”不含” RE 字符串的行.
-r: 递归模式, 可同时处理所有层级子目录里的文件.
-q: 静默模式, 不输出任何结果(stderr 除外. 常用以获取 return value, 符合为 true, 否则为 false .)
-i: 忽略大小写.
-w: 整词比对, 类似 /<word/> .
-n: 同时输出行号.
-c: 只输出符合比对的行数.
-h 查询多文件时不显示文件名.
-l: 查询多文件时只输出包含匹配字符的文件名(只输出文件名).
-o: 只输出符合 RE 的字符串. (gnu 新版独有, 不见得所有版本都支持.)
-E: 切换为 egrep .
egrep:
egrep等价于 grep -E . grep使用basic regular expression(BRE),egrep使用extended regular expression(ERE), 他们处理一些元字符的方法不同。egrep使用{}()?+|时不需要加转义符。
如:
echo “Hello world” |grep ‘/(Hell/|123/)’
等价于:
echo “Hello world” |egrep ‘(Hell|123)’