私はコマンドが端末に書き込むストリームに基づいてコマンド出力にbashの色を割り当てる方法を探しています。各ストリームに色を割り当てる方法はありますか?
例えば
stdout -> regular color
stderr -> red
program created streams that write to the terminal -> blue
答え1
あなたの要件とは異なりますが、誰かがstdout / stderrを色で区別したいと思っていたこの以前の質問を読む価値があります。
答え2
持っている:
https://github.com/sickill/stderred
または、次のコマンドを使用してbashでこれを実行できます。
rederror() { (tput setaf 1; cat ; tput sgr0) >&2; }
#Example
someCommand() { echo normal; echo error >&2; }
someCommand 2> >( rederror )
私はbashから青に端末に入る非標準出力を設定できないと思います。 stderredに使用されている方法は可能です(しかし、stderrにのみ色を適用すると思います)。