Os scripts de inicialização são um pouco de labirinto, não são?
Eu acredito que basicamente funciona que .profile é executado para shells de login - isto é, o que você obteria se você logasse remotamente - e .bashrc é usado para shells que não são de login, supondo que você esteja usando o bash. .profile sources .bashrc , portanto, em geral, você colocaria itens que sempre são usados em .bashrc , como adições ao caminho padrão e outras configurações de ambiente. Eu acredito que a convenção geral em sistemas * nix e bash é fazer a maior parte da customização em .bashrc ; Eu não vi .bash_aliases nas distribuições Linux da família Red Hat ou nos sistemas Unix que usei. Não me lembro de ter visto um .bash_local .
A maneira como o .bash_aliases é originado parece um bom modelo, por isso pode ser mais fácil fazer suas personalizações em outro arquivo, adicionando isso ao final de .bashrc :
# Local customized path and environment settings, etc.
if [ -f ~/.bash_local ]; then
. ~/.bash_local
fi
Pode ser útil consultar /etc/skel , em que os scripts de usuário padrão são copiados para os diretórios iniciais de novos usuários e em /etc/profile e /etc/bash.bashrc , que são padrões de todo o sistema.
Acho que a suposição subjacente a tudo isso é que o usuário pode fazer o que o usuário quiser com cópias pessoais de .profile , .bashrc , etc., portanto, nenhuma suposição é feita sobre o que está ou não nelas. .