grep 查看前后几行和参数匹配

如果在只是想匹配模式的上下几行,grep可以实现。
 
grep -5 'parttern' inputfile //打印匹配行的前后5行
grep -C 5 'parttern' inputfile //打印匹配行的前后5行
grep -A 5 'parttern' inputfile //打印匹配行的后5行
grep -B 5 'parttern' inputfile //打印匹配行的前5行

查看mysql慢日志中ip地址为192.168.0.10发送过来的SQL语句的后面三行
tail -50 /usr/local/mysql/data/sql-slow.log |grep -3 '192.168.0.10'  
 
grep -E 'l\{2,\}' 2.txt
grep -E 'h(ell|a)o' test.txt
grep '[a-z]\{5,\}' test.txt
grep -xf a.txt b.txt  //查询a与b共同存在的行
grep -vxf b.txt a.txt //查询a的行不在b文件中面的,就是a比b多出来的行
 
grep -v '^h' test.txt //显示非以h开发的
  
grep -E '^(h|y)' test.txt //-E支持扩展正则,相当于egrep
 
grep -A 1 'hello' test.txt  //除了显示匹配到的行也显示它之后的一行
grep -B 1 'hello' test.txt  //除了显示匹配到的行也显示它之前的一行
grep -C 1 'hello' test.txt  //除了显示匹配到的行也显示它之前和之后的一行
 
grep -r "hello" xx //在xx文件夹查找
grep -c //统计匹配的行数
grep -n //显示行号
posted @ 2018-11-21 17:01  一心二念  阅读(1830)  评论(0编辑  收藏  举报