シェルプロンプトをカスタマイズしたいと思います。$PS1
との違いは何ですか$PROMPT_COMMAND
?どの変数を使用する必要がありますか?どれがより互換性があるかを知るために、いくつかの歴史的規則(shell / posix過去)を知っておくとよいでしょう。
答え1
PROMPT_COMMAND
各プロンプトが端末に印刷される前に、1つ以上のコマンドを実行して迷惑な遅延を導入するために使用されます。
PS1
デフォルトの端末プロンプトを設定するために使用されます。良い好みとアブレーションの範囲内に維持されると便利ですが(たとえばPS1='\h:\w\$ '
、プロンプト)、ESCシーケンスが誤って終了した混乱実行端末。コマンド置換を使用すると、各プロンプトが印刷されたときにコマンドを実行して、はるかに迷惑な遅延を追加することもできます。
詳細については、を実行してman bash
検索してください。マニュアルページのサブセクションには、^PROMPTING
さまざまなプロンプト関連変数(PS0
..、、、)PS4
の説明もあります。PROMPT_COMMAND
PROMPT_DIRTRIM
Shell Variables