Olası Çoğalt:
.bashrc ve .bash_profile arasındaki fark
Ne arasındaki fark var .profile
ve .bash_profile
ve ne zaman hangi yapılandırırım?
Yani, eğer yapılandırırsam, .bash_profile
yine de yapılandırmam gerekir .profile
mi?
Olası Çoğalt:
.bashrc ve .bash_profile arasındaki fark
Ne arasındaki fark var .profile
ve .bash_profile
ve ne zaman hangi yapılandırırım?
Yani, eğer yapılandırırsam, .bash_profile
yine de yapılandırmam gerekir .profile
mi?
Yanıtlar:
bash
Varsayılan kabuğunuz olduğunu farz edersek , farklar bash
man sayfasında ( man bash
) açıklanmaktadır:
When bash is invoked as an interactive login shell, or as a non-interac-
tive shell with the --login option, it first reads and executes commands
from the file /etc/profile, if that file exists. After reading that file,
it looks for ~/.bash_profile, ~/.bash_login, and ~/.profile, in that
order, and reads and executes commands from the first one that exists and
is readable. The --noprofile option may be used when the shell is started
to inhibit this behavior.
Man sayfasında, nereden .profile
geldiği POSIX kabuk uyumluluk modunu kapsayan daha fazla detay var . Tüm ayrıntılar için tüm man sayfa bölümünü okuyun.
Yapılandırırsanız .bash_profile
, yapılandırmanız da gerekmez .profile
.
Kendi takma isimlerimi ve komutlarımı içeride tutmaktan hoşlanıyorum, .profile
böylece herhangi bir şeyi karıştırırsam, .profile
sistemi değiştiren büyük uygulamaları .bash_profile
(MacPorts gibi) etkilemeden her zaman silebileceğimi biliyorum .
Bir kullanmak için .profile
, sınırı dahil etmek gerekebilir source ~/.profile
sizin de .bash_profile
böylece .profile
dosya okunduğunda (Ned Deily cevabını bakın).
.profile normal bir kabuk işlemi aldığınızda bash tarafından yürütülür - örneğin bir terminal aracı açarsınız. .bash_profile oturum açma kabukları için bash tarafından yürütülür - bu yüzden örneğin makinenize uzaktan telnet / ssh yaptığınız zamandır. Örneğin, bir makineye uzaktan ssh atarsanız (bir X Terminal açtığınızı varsayalım), başlangıçta .bash_profile çalıştırılır. Bu XTerminal'de "xterm" yazıp başka bir X Terminali oluşturursanız, XTerminal'in ikinci örneği için .profile çalıştırılır. Dosyalar ana dizininizde bulunur (~). Varsayılan olarak yanıltmıyorsam, her ikisi de ~ / .bashrc komutunu çalıştırır, böylece hem oturum açma hem de oturum açma olmayan kabuklar için ortak ayarları / değişkenleri yapılandıracak şekilde düzenleyebilirsiniz (örn. PATH, bazı diğer adlar / kısayollar vb. Ayarı).
.profile
mu?
hızlı ve basit yapılandırma için (karmaşık işleri istemiyorsanız) basitçe ~ / .profile dosyanızdaki her şeyi yapılandırın. Yalnızca bazı sıkıntılarla karşılaştığınızda (ama muhtemelen asla olmayacak) .bash_login veya .bash_profile;) hakkında daha fazla bilgi edinin.
Ben de OS X'im ve asla .bash_profile veya .bash_login kullanmaya ihtiyacım olmadı ve sadece .profile kullandım, ancak kilometreniz değişebilir ...
.profile
.bashrc