Answers:
我ls
想您是管道制造商,并且想要保留端子颜色代码。您可以说ls --color=always
(而不是使用的默认值--color=auto
),它会保留代码,但这不能保证您要传递的内容知道如何理解它们。
如果您使用glark
而不是grep
它将尝试显示颜色。
如果less
与-R
它一起使用,将尝试显示颜色。
git
。我发现它具有类似的配置(例如git config color.diff always
),可以保持着色。
git diff
输出作为输入的任何脚本或命令,因为它将始终输出ANSI转义码。
grep "string" file.txt | head
为确保grep的结果是彩色的,我将其更改为grep "string" file.txt --color=always | head
这取决于在管道中生成输出的程序。
head
,,tail
等不是消除颜色的工具,而是生成数据的程序,该程序通常检查输出是否将输出到控制台(彩色),文件或管道(未彩色)
我发现了另一个SU Q&A,展示了如何撒谎以管道方式输出程序,就像它们将输出发送到控制台一样(使用来模拟控制台unbuffer
)
color=auto
模式的着色(使程序认为输出进入控制台而不是管道)?
head
)tail
等如何检测到它正在通过管道传递到另一个程序(以便它可以生成没有颜色等的数据)。
head
,,tail
等不是消除颜色的方法,它是生成数据的程序,通常会检查输出是否将输出到控制台(彩色),文件或管道(未彩色)。