カラーフィルタを介してコマンドを渡す

カラーフィルタを介してコマンドを渡す

Unixにはそのようなものがありますか?

$ echo "this should show in red" | red
$ echo "this should show in green" | green
$ echo "this should show in blue" | blue

ここでは、テキストカラーコードのテキスト(ファイルに貼り付けなど)として表示されるわけではありません。私の言葉は、テキストが実際に端末にその色で表示されるようにすることです。可能ですか?

ベストアンサー1

あなたは使用しますtputその理由は次のとおりです。

tput setaf 1
echo This is red
tput sgr0
echo This is back to normal

これはパイプラインを構築するために使用できます。

red() { tput setaf 1; cat; tput sgr0; }
echo This is red | red

デフォルトの色は黒(0)、赤(1)、緑、黄色、青、マゼンタ、ターコイズ、白(7)です。詳細は下記からご確認いただけます。terminfo(5)マンページ

おすすめ記事