Asterisk 正在生成包含以下内容的日志文件:
#033[1;31m警告#033[0m[10505]:#033[1;37mres_phoneprov.c#033[0m:#033[1;37m1232#033[0m #033[1;37mget_defaults#033[0m: #033[1;31m错误#033[0m[10505]:#033[1;37mconfig_options.c#033[0m:#033[1;37m720#033[0m #033[1;37maco_process_var#033[0m:
如何使用包含的颜色代码读取带有彩色输出的文件?
答案1
像这样吗?
tail -f asterisk.log | while read line; do x="$(echo -n ${line}|sed s/'#033'/'\\033'/g)";echo -e $x;done
如果需要,你可以将“tail”替换为“cat”。
答案2
syslog 默认转义 ansi 颜色代码。要启用,请将以下内容添加到 /etc/rsyslog.conf
$EscapeControlCharactersOnReceive 关闭
https://stackoverflow.com/questions/52862237/syslog-how-to-show-colorized-messages