Коли я запускаю термін bash, мій .profile не виконується. У мене немає ~ / .bash_profile або ~ / .bash_login, тому .profile повинен працювати, правда? Що ще може бути не так?
Коли я запускаю термін bash, мій .profile не виконується. У мене немає ~ / .bash_profile або ~ / .bash_login, тому .profile повинен працювати, правда? Що ще може бути не так?
Відповіді:
Це не оболонка для входу.
Якщо оболонка - оболонка для входу, вона шукатиме .bash_profile, якщо вона існує, то .profile. Інші снаряди шукають .bashrc
Отже, ви можете помістити потрібні речі в кожен екземпляр оболонки в .bashrc і, можливо, мати посилання, що джерела .bashrc в .profile.
Отже: .bashrc:
stuff you want
кінець .profile:
[ -n "$BASH" ] && [ -f ~/.bashrc ] && . ~/.bashrc
bash --login
. У вашому випадку, здається, просто запустіть bash, який за замовчуванням не запустить оболонку входу
Якщо ви використовуєте графічний робочий стіл, .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-сеанс джерела .profile.
Я думаю, що шлях - це (1) встановити / експортувати налаштування середовища в ~ / .profile та (2) .profile, створений .bash_profile:
[[ -f ~/.profile ]] && . ~/.profile
(і не має .bashrc, джерелом якого є будь-який .profile або .bash_profile).
Дивись також:
.profile
джерело під час входу, але він насправді цікавиться, як отримати bash
джерело, коли він запускає термінал (не під час входу)