如何将 *all* 输入的 shell 命令的输出通过管道传输到另一个?(例如,将所有内容通过管道传输到 'lolcat')

use*_*303 8 unix shell ruby pipe stdout

下午好,

(OS X 用户)

我特别想将我输入的每个 shell 命令的输出通过管道传输到 ruby​​ gem 'lolcat'(这使得输出到终端彩虹色)。

有没有办法在不单独显式别名命令的情况下做到这一点?我在想也许有一种方法可以在按下返回键之前通过管道传输任何内容,但我不确定如何执行此操作。

感谢您的帮助,因为我厌倦了在终端中只看一种颜色。

gle*_*man 3

您可以在 shell 中重定向 stdout:

exec 1> >(lolcat)
Run Code Online (Sandbox Code Playgroud)

如果lolcat将其自己的输出发送到标准输出,那么您一定会遇到问题。这可能有效

exec 1> >(lolcat >&2)
Run Code Online (Sandbox Code Playgroud)

  • 我觉得你想搬起石头砸自己的脚,而我只是把枪给了你。祝你好运。 (4认同)