A .profile
data remonta ao shell Bourne original conhecido como sh
. Desde que o shell GNU bash
é (dependendo das opções) um super do shell Bourne, ambas as conchas pode usar o mesmo arquivo de inicialização. Ou seja, desde que apenas sh
comandos sejam colocados.profile
Por exemplo, alias
é um comando interno válido bash
mas desconhecido para sh
. Portanto, se você tivesse apenas um .profile
em seu diretório pessoal e colocasse uma alias
declaração nele, sh
reclamaria. Portanto, há um arquivo específico do bash que possui comandos de inicialização do shell que o bash lerá se e somente se não houver um .profile
arquivo presente.
Na verdade, isso é um pouco simplista em algumas instalações, e eu não estou familiarizado com o Fedora. Em bash, /etc/profile
é lido pelo shell antes de qualquer arquivo em seu diretório pessoal. Se houver um script de inicialização em todo o sistema, ele geralmente diz algo como
if there is a $HOME/.profile:
source it
elseif bash is my shell and there is a $HOME/.bash_profile:
source that
Por que é assim? Uma tentativa de compatibilidade através de décadas de dialetos shell. Por que o tutorial foi escrito dessa maneira? O shell Bourne não é mais usado muito mais e algumas pessoas nem sabem que existe outro shell semelhante ao Bourne que o bash. Mesmo quando a sintaxe Bourne (limitada) é usada para maior compatibilidade entre plataformas, ela geralmente é executada dash
ou bash no modo de compatibilidade POSIX. De fato, a fonte shell Bourne real é provavelmente um componente de direitos autorais do Unix System V, que parece ser propriedade da Novell agora, mas não tenho idéia do que estão fazendo com ela.
Para o usuário iniciante, use um $HOME/.profile
ou $HOME/.bash_profile
mas não ambos, e você ficará bem. Como você já .bash_profile
trabalha com isso, pode haver coisas específicas do sistema necessárias para sua instalação.