Возможно ли иметь bash-скрипт (такой как .bashrc
или .bash_profile
, в основном), который выполняется только после cd'ing в определенную папку?
2 ответа
Добавьте это к вашему ~/.bashrc
.
Если .bashrc
находится в текущем рабочем каталоге:
PROMPT_COMMAND='if [[ "$bashrc" != "$PWD" && "$PWD" != "$HOME" && -e .bashrc ]]; then bashrc="$PWD"; . .bashrc; fi'
В зависимости от вашего конкретного случая использования и ограничений, ondir может удовлетворить ваши потребности:
ondir - это небольшая программа для автоматизации задач, характерных для определенных каталогов. Он работает, выполняя сценарии в каталогах, когда вы входите и выходите из них.
Для этого используется центральный файл ~/.ondirrc
для конфигурации per-dir. В отличии от этого , умной установка PROMPT_COMMAND
предложенного @Cyrus позволяет конфиг проживать в самих отдельных каталогах. Каждый подход действителен; это зависит от ограничений и данных, с которыми вы имеете дело.
Отказ от ответственности: я никогда не использовал ondir
лично. Я наткнулся на это, когда искал автоматический способ обработки пользовательских настроек git per-dir. В этом случае ondir
не соответствовал моим потребностям - я использовал псевдоним git, передав --config
для git clone
.