Quando inicio um terminal bash, meu .profile não está sendo executado. Eu não tenho um ~/.bash_profile ou ~/.bash_login, então .profile deve ser executado, certo? O que mais pode estar errado?
Responder1
Não é um shell de login.
Se um shell for um shell de login, ele procurará .bash_profile, se existir, e então .profile. Outros shells procuram .bashrc
Portanto, você pode colocar o que deseja em cada instância do shell em .bashrc e, possivelmente, ter uma referência que origine .bashrc em .profile.
Então: .bashrc:
stuff you want
fim de .profile:
[ -n "$BASH" ] && [ -f ~/.bashrc ] && . ~/.bashrc
Responder2
tente usar ~/.bashrc
em vez disso.
Responder3
Se você estiver usando uma área de trabalho gráfica, .profile deverá ser fornecido pelo seu gerenciador de área de trabalho. Lightdmfazsource .profile agora, pelo menos no Ubuntu. Ver:https://bugs.launchpad.net/ubuntu/+source/lightdm/+bug/794315
Com o kdm e o Kubuntu-12.04, o arquivo /etc/kde4/kdm/Xsession é originado, incluindo o .profile. O Kubuntu-12.10 provavelmente usará lightdm. Ubuntu 12.04 usa lightdm para que /usr/sbin/lightdm-session origine .profile.
Acho que o caminho a seguir é (1) definir/exportar as configurações do ambiente em ~/.profile e (2) ter .profile originado por .bash_profile:
[[ -f ~/.profile ]] && . ~/.profile
(e não ter .bashrc originado por .profile ou .bash_profile).
Veja também:
- Configurando a variável de ambiente BROWSER em .profile:http://fvue.nl/wiki/Linux:_Default_browser