我一直在尝试让tail对于服务器启动程序更容易阅读。我当前的命令过滤掉了启动程序中的大多数INFO和DEBUG消息:
tail -F ../server/durango/log/server.log | grep -e "ERROR" -e "WARN" -e "Shutdown" -e "MicroKernel" | grep --color=auto -E 'MicroKernel|$'
我想做的是创建一些东西,用黄色突出显示WARN,用红色突出显示ERROR,用绿色突出显示MicroKernel。我多次尝试只使用管道grep --color=auto,但唯一保留下来的颜色是管道中的最后一个命令。
有没有一个行程序可以做到这一点?或者甚至有一个多行程序?
6条答案
按热度按时间yqkkidmi1#
是,有办法做到这一点,也就是说,只要您终端支持**ANSI escape sequences**,这是大多数现有终端
我想我不需要解释如何grep,sed等点的颜色是正确的?
见下文,这将使
以下是示例:
注意:
\x1b
是十六进制的 ESC 字符(^VEsc)。查看结果:
nkkqxpd92#
我在几年前就为此编写了a script。通过将
highlight
的连续调用相互连接,可以很容易地覆盖多种颜色的情况。读我档案:
du7egjpx3#
多年来我一直在使用一个名为grc的工具来实现这一点。工作起来很有魅力。它为许多标准日志输出和格式提供了一些相当不错的模板,并且很容易定义自己的模板。我经常使用的一个命令是
它将系统日志输出着色,以便容易发现错误(通常标记为红色)。
在此处查找工具:
https://github.com/garabik/grc
(it也可作为用于大多数常见Linux风格的包来获得)。
yqlxgs2m4#
我写了TxtStyle,一个给日志着色的小工具。你可以定义正则表达式在
~/.txts.conf
文件中高亮显示:然后套用样式:
也可以通过管道输出
ugmeyewa5#
您可以创建彩色日志,而不必使用复杂的命令。
对于php是这样的:
**关键是使用Ctrl-v ctrl-[输入一个绿色^[**在vim的插入模式下,直接输入^[不起作用。
More info here
kqlmhetl6#
My sample using awk。匹配日志格式,如:
xxxx [debug] xxxxx xxxx xxxx