首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络技术 > 网络基础 >

怎么实现Linux下高亮关键字的tail -f功能

2013-08-29 
如何实现Linux下高亮关键字的tail -f功能tail -f xxx.log | perl -pe s/(ERROR)/\e[131m$1\e[0m/g?其中

如何实现Linux下高亮关键字的tail -f功能
tail -f xxx.log | perl -pe 's/(ERROR)/\e[1;31m$1\e[0m/g'

?其中,xxx.log是你要跟踪的文件。这里假设了你的Linux的PATH中有perl。perl在这里干的事情,就是通过命令行的方式进行动态的替换ERROR字符串的操作,替换过程中,主要使用了Linux的console_codes的语法结构。(具体关于console_codes的细节,可以通过man console_codes进行了解)这里,\e主要进行转移说明。

如果你手头有server log之类的日志,试试上面的命令,是不是把ERROR全部标红了。

利用这个原理,你完全可以按照你所需要的颜色高亮你感兴趣的输出,具体的颜色说明,可以在man console_codes中查到。

另外,less本身也支持类似于tail -f的操作,就是在你用less打开一个文件之后,按住SHIFT+F键,这样就直接进入follow的模式了。看上去跟tail -f效果是一致的。利用这点,你想达到高亮的tail -f的效果,就拢共分为以下3步了:

    less xxx.log中/${key_work}的方式搜索你要高亮的关键字。(即使目前文件中没有也没关系)SHIFT+F,进入follow模式

结束收工!

热点排行