当前位置:首页 » Linux技术知识

使用awk 分析日志

2018-04-22 16:03 本站整理 浏览(9)

直接上shell命令:

awk 'BEGIN{index2=1;sum=0;}{if($0~"1003"){index2=NR;sum++;print "第"NR"行: " ,$0;} else if (NR<index2+3 ) {print $0} else if (NR==index2+3){print "\n\n\n"}}END{print "共搜索到"sum"条"}' error.log.2018-04-17.log

命令解释


命令执行结果


 

store_error.log.2018-04-17.log 内容如下:

100300,aaa
aaaaaaaaaaabbbb
111111111111111
1
1
1
1
1
1003,bbb
bbbbbbbbbbbbbb
2222222222222222
2
2
2
2
2
2
1003.ccc
cccccccccccccccc
33333333333333333
3
3
3
3
3

 

 

awk 参数说明:

-f(小写):指定awk脚本;

-F(大写):指定分隔符;

-v:指定变量

 

参考:

http://hw1287789687.iteye.com/blog/2419653

http://hw1287789687.iteye.com/blog/2419658

https://www.tuicool.com/articles/2mqmYbe

https://my.oschina.net/huangweiindex/blog/1799244