Existe um .bashrc ou .bash_profile específico da pasta?

5

É possível ter um script bash (como .bashrc ou .bash_profile , basicamente) que é executado somente ao entrar em uma pasta específica?

    
por mchen.ja 16.05.2015 / 23:58

2 respostas

5

Adicione isso ao seu ~/.bashrc .

Se .bashrc estiver localizado no diretório de trabalho atual:

PROMPT_COMMAND='if [[ "$bashrc" != "$PWD" && "$PWD" != "$HOME" && -e .bashrc ]]; then bashrc="$PWD"; . .bashrc; fi'
    
por 17.05.2015 / 06:17
1

Dependendo do seu caso de uso e restrições exatas, ondir pode atender às suas necessidades:

ondir is a small program to automate tasks specific to certain directories. It works by executing scripts in directories when you enter and leave them.

Ele faz isso usando um arquivo central ~/.ondirrc para a configuração por diretório. Em contraste, a configuração inteligente de PROMPT_COMMAND que o @Cyrus sugeriu permite que a configuração resida nos próprios diretórios individuais. Cada abordagem é válida; isso depende das restrições e dos dados com os quais você está lidando.

Aviso: nunca usei ondir pessoalmente. Eu me deparei com isso enquanto procurava por uma maneira automática de lidar com usuário git config por dir . Nesse caso, ondir não atendeu às minhas necessidades - acabei usando um alias do git passando --config options para git clone .

    
por 20.05.2015 / 05:38