Когда я запускаю терминал bash, мой .profile не выполняется. У меня нет ~ / .bash_profile или ~ / .bash_login, так что .profile должен работать, верно? Что еще может быть не так?
15
Это не оболочка для входа.
Если оболочка является оболочкой входа в систему, она будет искать .bash_profile, если она существует, то .profile. Другие оболочки ищут .bashrc
Таким образом, вы можете поместить нужные вещи в каждый экземпляр оболочки в .bashrc и, возможно, иметь ссылку на источник .bashrc в .profile.
Итак: .bashrc:
stuff you want
конец .profile:
[ -n "$BASH" ] && [ -f ~/.bashrc ] && . ~/.bashrc
bash --login
. В вашем случае кажется, что он просто запускает bash, который по умолчанию не запускает оболочку входапопробуйте использовать
~/.bashrc
вместо.источник
Если вы используете графический рабочий стол, ваш менеджер рабочего стола должен получить .profile. Lightdm делает исходники .profile сейчас, по крайней мере, в Ubuntu. Смотрите: https://bugs.launchpad.net/ubuntu/+source/lightdm/+bug/794315
При использовании kdm и Kubuntu-12.04 файл / etc / kde4 / kdm / Xsession получает источник, в том числе и .profile. Kubuntu-12.10, вероятно, будет использовать lightdm. Ubuntu 12.04 использует lightdm, поэтому / usr / sbin / lightdm-session source .profile.
Я думаю, что путь - это (1) установить / экспортировать настройки среды в ~ / .profile и (2) получить .profile от .bash_profile:
(и не иметь .bashrc от .profile или .bash_profile).
Смотрите также:
источник
.profile
источник при входе в систему, но на самом деле он интересуется, как получитьbash
его, когда запускает терминал (не при входе в систему)