5

Возможно ли иметь bash-скрипт (такой как .bashrc или .bash_profile , в основном), который выполняется только после cd'ing в определенную папку?

2 ответа2

5

Добавьте это к вашему ~/.bashrc .

Если .bashrc находится в текущем рабочем каталоге:

PROMPT_COMMAND='if [[ "$bashrc" != "$PWD" && "$PWD" != "$HOME" && -e .bashrc ]]; then bashrc="$PWD"; . .bashrc; fi'
1

В зависимости от вашего конкретного случая использования и ограничений, ondir может удовлетворить ваши потребности:

ondir - это небольшая программа для автоматизации задач, характерных для определенных каталогов. Он работает, выполняя сценарии в каталогах, когда вы входите и выходите из них.

Для этого используется центральный файл ~/.ondirrc для конфигурации per-dir. В отличии от этого , умной установка PROMPT_COMMAND предложенного @Cyrus позволяет конфиг проживать в самих отдельных каталогах. Каждый подход действителен; это зависит от ограничений и данных, с которыми вы имеете дело.

Отказ от ответственности: я никогда не использовал ondir лично. Я наткнулся на это, когда искал автоматический способ обработки пользовательских настроек git per-dir. В этом случае ondir не соответствовал моим потребностям - я использовал псевдоним git, передав --config для git clone .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .