回答:
PROMPT_COMMANDこれは、PS1の前に実行される変数を変更することで実現できます。例:
PROMPT_COMMAND='ls'
これは、新しいプロンプトを受け取るたびにリストされます。もちろんls、ディレクトリが変更された場合にのみ実行したい:
PROMPT_COMMAND='[[ $my_currdir != $PWD ]] && ls; my_currdir=$PWD'
これにより、新しいディレクトリが最後のディレクトリセットと同じでないかどうかが確認され、次に実行lsされます。その後、現在のディレクトリがmy_currdir
私はここでさらに優れた行を見つけました。ここでは、bashをファイルマネージャとして使用しています。
PROMPT_COMMAND='[[ ${__new_wd:=$PWD} != $PWD ]] && list; __new_wd=$PWD'
設定されていない可能性__new_wdがあるため、その場合に使用されるデフォルト値を割り当てることができます(bashmanページを参照して、を検索:=)