Opções de shell (de shopt
ou set
) não são herdados através do ambiente. Também não são aliases . Se você quiser, por exemplo, ativar failglob
para todos os seus shells, isso precisa estar no arquivo RC. Um alias pode ser substituído por uma função exportada, mas não há solução alternativa para as opções.
Ele também é convencional & incentivados pelo manual a ter .bash_profile
source .bashrc
, então essas configurações que você colocar lá serão carregadas em shells de login e não-lógicas. Se eles estão apenas em .bash_profile
, eles podem nunca ser carregados em um shell que você realmente usa.
Outra situação é onde você tem uma configuração mais complexa com o código executável real (por exemplo, alguns recursos avançados PROMPT_COMMAND
) e deseja que as variáveis recém-inicializadas sejam usadas em cada shell. Você provavelmente não desejaria essas variáveis exportadas, ou talvez elas sejam matrizes e não podem ser.
Um último caso seria para a execução de comandos de efeitos colaterais: exibindo fortune
ou uma lista de tarefas em cada novo shell. Isso não é muito "configuração", mas está configurando seu comportamento de shell.
Há também o caso mais geral em que bash
não é invocado como shell de login (porque seu gerenciador de sessão faz outra coisa, ou não é seu shell de login ou ...) e seu .bash_profile
seria nunca será processado. Isso pode estar fora do escopo para sua preocupação.