Profile e rc: Entendendo os arquivos de inicialização do Bash e as diferenças entre eles
O Tecmint publicou no feriado um guia dos arquivos de inicialização do shell no Linux (fortemente BASH-cêntrico), expondo conceitos e diferenças entre profile, bash_profile, bashrc, bash_login e seus congêneres.
Entre as muitas dicas não mencionadas no artigo, está uma que eu demorei para internalizar: configurações do ambiente do usuário (por exemplo, o PATH) que precisam valer tanto para a shell de login e as demais shells (interativas e não-interativas) ficam melhor no .profile, porque metade dos .bashrc que eu encontro pelo mundo começam com uma linha abortando sua execução se a shell for não-interativa (mais especificamente: '[ -z "$PS1" ] && return'), aí não tem bom uso da variável $BASH_ENV que faça as configurações do ambiente serem carregadas desse arquivo quando um script não-interativo é chamado a partir de um utilitário do sistema que já não traga junto a si o ambiente desse usuário. Aliás, esse artigo especificamente sobre a sequência de execução dos arquivos de inicialização do Bash é uma boa leitura para quem acha que eles são todos iguais.
(via www.tecmint.com - “Understanding Shell Initialization Files and User Profiles in Linux”)
Comentar
comments powered by DisqusComentários arquivados