在检查控制台输出和记录不同软件的消息时,有时很难保持概述。将输出变得丰富多彩并突出显示当前重要的文本短语会更容易。
是否有一个Linux / UNIX shell程序可以用作过滤器,利用unix管道根据预定义的模式和颜色使控制台输出丰富多彩?
p.ex。 模式定义:
INFO=green
WARN=yellow
ERROR=red
\d+=lightgreen
突出显示消息的严重性以及数字。
用法:
$ chatty_software | color_filter
11:41:21.000 [green:INFO] runtime.busevents - SensorA state updated to [lightgreen:17]
11:41:21.004 [green:INFO] runtime.busevents - SensorB state updated to [lightgreen:20]
原始输出:
11:41:21.000 INFO runtime.busevents - SensorA state updated to 17
11:41:21.004 INFO runtime.busevents - SensorB state updated to 20
答案 0 :(得分:3)
我们在这些行中使用了一个sed脚本:
s/.* error .*/^[[31m&^[[0m/
t done
s/.* warning .*/^[[33m&^[[0m/
t done
:done
并通过
调用它sed -f log_color.sed
我想你可以做类似的事情吗?