当我使用
sed -i "s,.*%.*,$(tput setaf 1)&$(tput sgr0),g" A.log
整条线消失了,当我使用
sed -i "s,^%.*,$(tput setaf 1)&$(tput sgr0),g" A.log
仅第一个字符 ( %
) 变为红色。
我应该怎么办?
编辑:实际上整行并没有消失,我正在使用,more
但是当我使用时,less -R
我看到了这个(带有控制 M 字符)和红色的%。
% Invalid input detected at '^' marker.^M
答案1
像这样的东西?
sed -i "s/^%.*$/$(tput setaf 1)\\0$(tput sgr0)/" A.log
并用于cat -v file
显示内容而不解析颜色。