foo
我有一个包含内容的文件:
foo
然后我执行:
grep "foo" foo > bar
生成一个bar
“二进制”(根据文件浏览器)文件,其内容
[01;31m[Kfoo[m[K
如果我尝试同样的awk
awk '{ print $1 }' foo > bar
生成一个包含内容的普通文本文件
foo
我觉得我在这里遗漏了一些明显的东西,这正常吗?为什么(至少)两个命令之间存在差异。
答案1
问题很简单。我的标志grep
中有一个别名:bashrc
--color=always
alias grep="grep --color=always"
解决方案只是取消命令的别名
unalias grep
并从中删除别名.bashrc
,然后将其作为来源. .bashrc
。