我有一个内容为xxx - wwdebug0: xxxx
的文件,当我使用cat xx.log | grep 'wwdebug0' > a.txt
取出所有wwdebug0字段并使用vim在Mac中打开a.txt时,内容变为- ^[[01;31m^[[Kwwdebug0^[[m^[[K:
。< / p>
所以,
这些^[[m
个角色来自哪里?
如何在a.txt中删除这些东西?
答案 0 :(得分:3)
^[[...
为ANSI escape codes,用于突出显示终端中的文字。它们由grep
引入以突出显示实际匹配。
通常情况下,grep
会检测到您将输出重定向到文件中,并会关闭突出显示(--color=auto
),但这对您不起作用(可能是因为您有--color=auto
中的GREP_OPTIONS
。
要解决此问题,请更改您的设置,或通过
明确关闭默认选项cat xx.log | GREP_OPTIONS= grep 'wwdebug0' > a.txt