linux grep 常用操作记录(或并与显示多行)
1 查看关键机字范围行#grep -A 5 ‘parttern’ filename //打印匹配行的后5行#grep -B 5 ‘parttern’ filename //打印匹配行的前5行#grep -C 5 ‘parttern’ filename //打印匹配行的前后5行#grep -5 ‘parttern’ filename //打印匹配行的前后5行其他相关#tail -n 5 ...
1 查看关键机字范围行
#grep -A 5 ‘parttern’ filename //打印匹配行的后5行
#grep -B 5 ‘parttern’ filename //打印匹配行的前5行
#grep -C 5 ‘parttern’ filename //打印匹配行的前后5行
#grep -5 ‘parttern’ filename //打印匹配行的前后5行
其他相关
#tail -n 5 filename 查看文件最后5行内容
#head -n 5 filename 查看文件前5行内容
sed -n ‘5,10p’ 查看文件5-10行内容
2、grep 或操作
grep ‘关键词1|关键词2’ | more
3、grep 非操作
grep -v abc input.txt | more
4、grep 转义 关键字—
cat test.log | grep “---” > test1.log g
5、grep 二进制文件 (Binary file xxx.log matches 错误)
grep -a “key” xxx.log
例子
找出 文本中 aid 的值为45的,
{“aid”:45,“path”:“attachment/Mon_1112/2_1_5728040df3ab346.jpg”}
下面三个等价
grep -o -E ‘aid":[1-9]’ tmp.txt
cat kv.txt | grep -o -e 'aid":[1-9]’ | awk -F : ‘{print $2}’ | more
cat kv.txt | grep -o -e ‘aid":[1-9]*’ | cut -d ‘:’ -f 1,2 | more
注:grep -o 仅匹配”之意。光用它不够,配合 -E 选项使用扩展正则表达式则威力巨大
注
grep 或操作结合正则表达式 grep -E grep -E ‘pattern1|pattern2’ filename
或者用 grep -e pattern1 -e pattern2 filename
grep 并操作结合正则表达式 grep -E ‘pattern1.*pattern2’ filename
更多推荐
所有评论(0)