Ketika saya memulai terminal bash, profil saya tidak dieksekusi. Saya tidak punya ~ / .bash_profile atau ~ / .bash_login, jadi .profile seharusnya dijalankan, kan? Apa lagi yang bisa salah?
15
Ini bukan shell login.
Jika shell adalah shell login, ia akan mencari .bash_profile jika ada, lalu .profile. Kerang lain mencari .bashrc
Jadi, Anda bisa meletakkan hal-hal yang Anda inginkan di setiap instance shell di .bashrc, dan mungkin memiliki referensi yang sumber .bashrc di .profile.
Jadi: .bashrc:
stuff you want
akhir profil.:
[ -n "$BASH" ] && [ -f ~/.bashrc ] && . ~/.bashrc
bash --login
. Dalam kasus Anda tampaknya hanya menjalankan bash, yang secara default tidak akan memicu shell logincoba gunakan
~/.bashrc
saja.sumber
Jika Anda menggunakan desktop grafis, .profile harus bersumber dari manajer desktop Anda. Lightdm tidak mencari .profile sekarang, setidaknya di Ubuntu. Lihat: https://bugs.launchpad.net/ubuntu/+source/lightdm/+bug/794315
Dengan kdm, dan Kubuntu-12.04, file / etc / kde4 / kdm / Xsession diambil dari sumbernya, yang termasuk dalam file .profile. Kubuntu-12.10 mungkin akan menggunakan lightdm. Ubuntu 12.04 menggunakan lightdm sehingga / usr / sbin / lightdm-session sumber .profile.
Saya pikir cara untuk pergi adalah (1) mengatur / mengekspor pengaturan lingkungan di ~ / .profile dan (2) memiliki .profile yang bersumber dari .bash_profile:
(dan tidak memiliki .bashrc yang bersumber dari .profile atau .bash_profile).
Lihat juga:
sumber
.profile
sumber Anda saat masuk, tetapi dia benar-benar bertanya-tanya tentang cara mendapatkanbash
sumber saat ia meluncurkan terminal (bukan saat masuk)