色 rm -i プロンプト情報

色 rm -i プロンプト情報

rm -i次のコマンドで生成されたメッセージにカスタムカラーを適用する方法を探しています。

~ $ rm -i file.txt
rm: remove regular empty file 'file.txt'?

ANSIカラーを適用し、出力を再びstderrにリダイレクトするコマンドにstderrをstdinにリダイレクトする必要があることを知っています。例:

~ $ rm -i file.txt 2> >(sed $'s/^/\e[31m/;s/$/\e[m/'>&2)

しかし、これだけではうまくいきません。上記のコマンドは何も印刷せず、すぐにユーザー入力を待ち始めます。たとえば、nandと入力すると、Enterカラー出力が表示され印刷されます。

~ $ rm -i file.txt 2> >(sed $'s/^/\e[31m/;s/$/\e[m/'>&2)
n
rm: remove regular empty file 'file.txt'? ~ $ 

ここで何が間違っているのか理解しているようです。 stderr はリダイレクトされ、色付けされますが、コマンドがユーザー入力を待機し始めると印刷されません。rm標準入力を聞き始める前にカラーメッセージを印刷する方法はありますか?

ベストアンサー1

おすすめ記事