给定一个命令,当它的输出到达终端时改变其行为(例如产生彩色输出),如何在保留改变的行为的同时在管道中重定向该输出?必须有一个实用程序,我不知道。
某些命令(例如grep --color=always
)具有选项标志来强制执行该行为,但问题是如何解决仅依赖于测试其输出文件描述符的程序。
如果重要的话,我的 shellbash
在 Linux 上。
例如,我有一个输出:
Hello, this is the output.
Run Code Online (Sandbox Code Playgroud)
(例如,假设为hello
红色,the
绿色,output
紫色)。
现在,假设这是一个名为x
.
如果我使用这个命令,输出变成白色:
x | grep hello
Run Code Online (Sandbox Code Playgroud)
我读过可以使用grep --color=always
. 但是,这会更改颜色以突出显示我搜索的结果,而不是保留原始线条颜色。
我想保留原始线条颜色。如何在保留它们的同时使用 grep?