コマンドの色を設定しますか?

コマンドの色を設定しますか?

私が入力するコマンドが他のコマンドとは異なる色になるようにコマンドラインカラーを設定したいと思います。

これは私の現在のPS1設定です。
PS1="\n\[\e[1;33m\]\w\[\e[1;30m\] \D{%F %T}\[\e[0m\]\n\W $ \[\e[1;35m\] "

それは以下を提供します:

ここに画像の説明を入力してください。

私が達成したいのはls -al紫だけです(後に出てくるすべてではありません)。

ベストアンサー1

Bashのマニュアルによると:

PS0
このパラメータの値は拡張されます(参照:ヒント以下)コマンドを読んだ後、コマンドが実行される前にインタラクティブシェルに表示されます。

したがって、コマンドプロンプトを変更PS0しながらカラー出力を選択できます。PS1たとえば、yourPS1と次のようにPS0

PS1="\n\[\e[1;33m\]\w\[\e[1;30m\] \D{%F %T}\[\e[0m\]\n\W $ \[\e[1;35m\] "
PS0="\[\e[0m\]"

紫色のコマンドプロンプトと標準の白い出力が生成されます。内蔵カラー出力を持つコマンドは、固定カラーよりも優先されますPS0

またはあなたは使用することができますtputで色を設定しますPS0。以下は、tputコマンド出力を白に設定する例です。

PS0="\[$(tput setaf 7)\]"

これはBashベースの答えですが、他のシェルではPS1PS0

おすすめ記事