Linux grep 命令参数使用方法[-vE]
- grep 常用参数
- 常用的g r e p选项
- 使用grep匹配“与”或者“或”模式
grep 常用参数
参数
-v #排除条件-E #多个条件使用,或
例子:排除#号和空格行内容
#grep命令去掉空格行和以#开头的行
grep -vE '^#|^$' filename
“^” 表示行首,“^#” 就是以#开头的行。
“KaTeX parse error: Expected group after '^' at position 9: " 表示行尾,"^̲” 就是空行。
-E表示 “或” 的关系。
cat android.log | grep -v '^#'| grep -v '$'
常用的g r e p选项
-c 只输出匹配行的计数。
-i 不区分大小写(只适用于单字符)。
-h 查询多文件时不显示文件名。
-l 查询多文件时只输出包含匹配字符的文件名。
-n 显示匹配行及行号。
-s 不显示不存在或无匹配文本的错误信息。
-v 显示不包含匹配文本的所有行。
例子
grep -v "Sort" tab2 显示不包含匹配文本的所有行grep -n "Sort" tab2 显示匹配行及行号grep -c "Sort" tab2 只输出匹配行的计数
精确匹配: grep “01”>" tab2
grep -in "code" tab2 忽略大小写
多次过滤
grep -in "code" tab2 | grep "02"
使用grep匹配“与”或者“或”模式
g r e p命令加- E参数,这一扩展允许使用扩展模式匹配。例如,要抽取城市代码为2 1 9或2 1 6,方法如下:
grep –E ‘219|216’ tab2
g r e p允许使用国际字符模式匹配或匹配模式的类名形式。
类等价的正则表达式
[ [ : u p p e r : ] ] [ A - Z ][ [ : a l n u m : ] ] [ 0 - 9 a - zA-Z][ [ : l o w e r : ] ] [ a - z ][ [ : s p a c e : ] ] 空格或t a b键[ [ : d i g i t : ] ] [ 0 - 9 ][ [ : a l p h a : ] ] [ a - z A - Z ]
大多数系统管理员称 /dev/null 为比特池, 可以将之看成一个无底洞,有进没有出,永远也不会填满。
要查看DNS服务器是否正在运行(通常称为named),方法如下
ps -ef | grep "name"|grep -v "grep"
egrep
egrep接受所有的正则表达式,一个显著特性是可以以一个文件作为保存的字符串,然后将之传给egrep作为参数,为此使用- f开关。
egrep -f par2 tab2 par2是文件,里面包括各种匹配的具体格式
如果要查询存储代码32L或2CC,可以使用(|)符号,意即“|”符号两边之一或全部。
egrep '(Code|Sort)' tab2