Linux中日志中的关键字高亮

转载自:https://blog.csdn.net/kuzaman/article/details/50989335

还原需求场景:测试工程师也要查看Linux的日志,但面对一坨坨的日志,除了眼花真没别的收获了。

解决需求场景:让log中的关键词变色或者高亮,让眼睛能聚焦。

Linux命令中的高亮目前已知有2种比较好用: 
1、tail -f 日志文件 |perl -pe ‘s/(高亮的关键字)/e[1;31m$1e[0m/g’ 
2、tail -f 日志文件 |grep -E “高亮的关键字1|高亮的关键字2|…|高亮的关键字N” -A10 -B10 --color=auto

命令1说明:该方法在《Linux Shell脚本攻略》中有提及如何改变终端输出色彩的介绍,也可以参考网文《http://hittyt.iteye.com/blog/1927026》中关于过滤关键字高亮显示的内容。 其中的括号不可省略!!!
perl -pe命令显示的高亮关键字

命令2说明:这是我和我的朋友张三水在切磋Linux命令使用的时候发现的一条命令,很简单也很实用,要比第一条命令更容易记忆,先上一张图 。color前面两个横线!!!
grep的参数高亮显示关键字 
egrep = grep -E 是扩展grep命令; 
-A10 -B10表示在有关键词的上下10行范围内都进行过滤关键词的操作,英文解释: 
*Context control: 
-B, –before-context=NUM print NUM lines of leading context 
-A, –after-context=NUM print NUM lines of trailing context* 
尝试 -A1 -B1得到结果和原命令基本一致 
尝试去掉 -A -B参数,得到结果和原命令基本一致 
–color=auto 来将关键字部分使用颜色显示,至于如何自定义关键词的颜色,这个。。。就比较复杂了,请参考文章《在linux下给grep命令添加颜色 http://blog.csdn.net/diy534/article/details/7025640

总结:命令2中有egrep –color这个命令足够高亮显示日志中的关键词,特别是在tail命令这种实时刷新日志记录的情况下,就用红色高亮吧,足够醒目的了,别折腾了,更何况这个命令又如此方便记忆。

原文地址:https://www.cnblogs.com/starstarstar/p/9044874.html