让log中的关键词过滤的酷炫

来源:互联网 发布:淘宝五金店铺介绍 编辑:程序博客网 时间:2024/06/04 20:09

其实:酷炫=高亮

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

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

Linux命令中的高亮目前已知有2种比较好用:
1、tail -f 日志文件 |perl -pe ‘s/(高亮的关键字)/\e[1;31m$1\e[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命令使用的时候发现的一条命令,很简单也很实用,要比第一条命令更容易记忆,先上一张图
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命令这种实时刷新日志记录的情况下,就用红色高亮吧,足够醒目的了,别折腾了,更何况这个命令又如此方便记忆。

0 0