Rsyslog 默认使用八进制代码来编码控制代码和空格:#012
换行符,#011
制表符
谷歌搜索只找到了如何使用标准\012
格式而不是转换八进制代码的结果#012
。
我如何跟踪日志文件并在输出中显示换行符和制表符而不是 Rsyslog 使用的八进制代码?
答案1
以下 perl 单行程序将常用的八进制代码转换为 ascii:
tail -f messages.log | perl -pe 's/#(011|012|015)/chr oct $1/ge'
编辑2019-04-02:修改了正则表达式以针对特定的八进制代码