重複の可能性:
ディレクトリに入るときにbashスクリプトを実行する
私は非常に特定のバージョンのツールが必要な環境を実行しています。環境を設定するコマンドは、次のスクリプトにあります。set_foo_env.sh
ディレクトリがあるとしましょう~/repository/foo/
。set_foo_env.sh
ディレクトリだけを入力しても実行できますかfoo
?
ベストアンサー1
PROMPT_COMMAND を使用でき、PROMPT_COMMAND で指定されたコードは bash 描画プロンプトの前に実行されます。
# Call function 'foo'
PROMPT_COMMAND=foo
# The function
foo() {
if [[ $PWD == "$HOME/repository/foo" ]]; then
set_foo_env.sh
fi
}
PROMPT_COMMAND は bash にのみ適用されます。 bashはプロンプトを描くたびにfoo関数を呼び出すので、これは効率的なアプローチではありません。