例如,当使用 ack 在源文件中搜索代码时,输出会高亮显示。但是,如果将输出通过管道传输到本地文件中,则会丢失代码高亮部分。我们有命令行工具来保留它吗?
要理解我的意思:
$ git clone https://github.com/koehlma/jaspy
$ cd jaspy/
$ ack func ./* # you see the high light for each match
$ ack func ./* > output.txt
$ cat output.txt # you don't see the high light
答案1
ack
做了一些类似的事情grep
。当它将文本输入终端时,它会以彩色显示结果。如果输出重定向到文件,则匹配项不会着色。
您可以使用选项--color
和来覆盖这些启发式方法--nocolor
。
查看man 1 ack
更多详细信息。