我一直在试图使尾部多了几分服务器初创可读。 我现在命令过滤掉大部分从启动将INFO和DEBUG消息:
tail -F ../server/durango/log/server.log | grep -e "ERROR" -e "WARN" -e "Shutdown" -e "MicroKernel" | grep --color=auto -E 'MicroKernel|$'
我想这样做的是工艺品的东西,将突出以黄色和ERROR红色警告 ,并在微内核绿色。 我尝试了管道的grep --color =自动多次,但生存的唯一颜色是在管道的最后一个命令。
是否有一个衬垫做到这一点? 甚至许多班轮?
是的,有办法做到这一点。 也就是说,只要你的终端支持ANSI转义序列 。 这是最有终端。
我想我不需要解释如何用grep,SED等点的颜色吗?
见下文,这将使
WARN yellow
ERROR red
foo green
这里是例子:
kent$ echo "WARN
ERROR
foo"|sed 's#WARN#\x1b[33m&#; s#ERROR#\x1b[31m&#; s#foo#\x1b[32m&#'
注意 : \x1b
是ESC字符(^ V Esc键 )十六进制。
看到的结果:
我写了一个脚本这年前。 你可以很容易地通过管道的连续覆盖调用多个颜色的情况下highlight
到彼此。
自述:
Usage: ./highlight [-i] [--color=COLOR_STRING] [--] <PATTERN0> [PATTERN1...]
This is highlight version 1.0.
This program takes text via standard input and outputs it with the given
perlre(1) pattern(s) highlighted with the given color. If no color option
is specified, it defaults to 'bold red'. Colors may be anything
that Perl's Term::ANSIColor understands. This program is similar to
"grep --color PATTERN" except both matching and non-matching lines are
printed.
The default color can be selected via the $HIGHLIGHT_COLOR environment
variable. The command-line option takes precedence.
Passing -i or --ignore-case will enable case-insensitive matching.
If your pattern begins with a dash ('-'), you can pass a '--' argument
after any options and before your pattern to distinguish it from an
option.
你可以创建一个彩色的日志,而不是用复杂的命令的。
对于PHP是这样的:
echo "^[[30;43m".$ip."^[[0m";
关键的一点是要使用Ctrl-V CTRL- [输入 vim的绿色^ [下插入模式,直接输入^ [不起作用。
更多资讯
我一直在使用一个名为GRC这几年的工具。 奇迹般有效。 它配备了许多标准日志输出和格式一些相当不错的模板,很容易定义自己。 我经常使用的命令是
grc tail -f /var/log/syslog
它colorizes syslog的输出,所以很容易被发现的错误(通常标记为红色。
在这里查找工具:
https://github.com/garabik/grc
(它也可作为包最常见的Linux版本)。