Takma adların .profile
dosyaya yerleştirildiğinde her zaman çalışmamasının iki nedeni vardır . Birincisi, .profile
(veya .bash_profile
) dosyasının yalnızca bir oturum açma kabuğu için çalıştırılmasıdır. Eğer bash'ı X altındaki bir terminal penceresinde başlatıyorsanız, terminal emülatörünüz (örn. Gnome-termanl) bash'ı giriş kabuğu olarak çalıştırmıyor olabilir. [Çoğu, bunu değiştirmek için bir seçeneğiniz vardır, ancak varsayılan (yine de gnome-termal için) bir giriş kabuğu olarak çalıştırmak değildir.]
Kabuk etkileşimli bir kabuk .bashrc
olacaktır ve böylece çalıştırılacaktır.
Ancak, X oturumu başlatıldığında normalde bash bir giriş kabuğu olarak çalıştırıldı. Dolayısıyla, içinde diğer ad komutları varsa .profile
, PATH vb. Ortam değişkenlerini ayarlama ile birlikte yürütüleceklerdir. Bir terminal penceresi açıldığında, o terminal penceresinde komut istemek ve komutları çalıştırmak için yeni bir bash örneği çalıştırılır. Ortam değişkenlerinden farklı olarak, takma adlar bash'ın bir örneğinden başlattığı yeni bir örneğe aktarılamaz. Yani takma adlar yeni kabuğa aktarılmaz.
Bunu görmek için şu denemeyi deneyin:
export ROBERT=bob
alias james=jimmy
echo $ROBERT
alias james
bash #start a new bash instance
echo $ROBERT
alias james
exit #end the new bash instance and revert to the original one
echo $ROBERT
alias james
.bashrc
Giriş kabuğu olarak başlatıldığında bash tarafından çalıştırılmadığını unutmayın . Yani takma adlarınızı oraya koymak, sizden .bashrc
kaynaklanmadığı sürece her zaman işe yaramaz .profile
, bu çok yaygın bir uygulamadır.
gl
? Durak? GUI?