Linux ls命令中的额外转义字符使生活变得艰难
我想发出一个简单的ls命令并将结果存储在一个文件中: ls-ltr equ*>ffile 文件名显示时附加了额外的转义字符。这些在一些实用程序(如vi)中很明显地出现,而在其他工具(如more)中则完全没有。例如:Linux ls命令中的额外转义字符使生活变得艰难,linux,ls,ansi-escape,Linux,Ls,Ansi Escape,我想发出一个简单的ls命令并将结果存储在一个文件中: ls-ltr equ*>ffile 文件名显示时附加了额外的转义字符。这些在一些实用程序(如vi)中很明显地出现,而在其他工具(如more)中则完全没有。例如: -rw------- 1 me 9607LPET 72680 Apr 10 12:00 ^[[0m^[[00mequ_00020.dat^[[0m -rw------- 1 me 9607LPET 72680 Apr 10 12:00 ^[[00mequ_00021.dat^[[
-rw------- 1 me 9607LPET 72680 Apr 10 12:00 ^[[0m^[[00mequ_00020.dat^[[0m
-rw------- 1 me 9607LPET 72680 Apr 10 12:00 ^[[00mequ_00021.dat^[[0m
-rw------- 1 me 9607LPET 356110 Apr 10 12:00 ^[[00mequ_00065.dat^[[0m
-rw------- 1 me 9607LPET 60253 Apr 10 12:00 ^[[00mequ_00067.dat^[[0m
-rw------- 1 me 9607LPET 83656 Apr 10 12:00 ^[[00mequ_00068.dat^[[0m
无论如何,这些字符几乎可以被我用来处理这个文件列表的任何工具检测到。他们使得处理文件名变得非常困难。
我怎样才能摆脱它们?他们在那里干什么
编辑:此问题已被标记为另一个问题的副本,该问题还涉及去除ls输出中的颜色。然而,我坚持认为去除颜色是解决两个截然不同问题的唯一方法。另一个问题首先是关于颜色的。这个不是。用户可能会遇到我刚才遇到的问题,但仍然不知道他应该考虑ls输出中涉及颜色的其他问题。一、 当然,他是这些用户之一。因此,我坚持认为,这不是另一个问题的正确重复,这个问题应该作为一个关于一个独特问题的独特问题保留,因为事实上这就是问题所在。这些是ANSI转义序列,可以打开和关闭颜色。尝试添加
--color=never
到ls以关闭着色
通常,您应该使用-color=auto,当输出不是终端时,它应该关闭颜色。哦,就是这样!谢谢可能重复的、、和朋友。@jww我想说,虽然这篇文章和可能重复的文章有相同的解决方案,但对于两个不同的问题,它是相同的解决方案。一些查看堆栈溢出的用户可能会遇到与我相同的问题,但仍然不知道他应该查看关于ls中颜色的问题。