tl; dr sürümü: kullanım ~/.zshrc
Aşağıdakiler arasındaki farkları anlamak için man sayfasını okuyun :
~/.zshrc
, ~/.zshenv
Ve ~/.zprofile
.
Yorumumla ilgili olarak
Kev'in verdiği cevaba ekli yorumumda dedim ki:
Bu yanlış görünüyor - / etc / profile bulabildiğim hiçbir zsh belgesinde listelenmemiş.
Bu kısmen yanlış çıkıyor: kaynaklanıyor /etc/profile
olabilirzsh
. Ancak , bu yalnızca zsh
" sh
veya olarak çağrıldığında" oluşur ksh
; bu uyumluluk modlarında:
Olağan zsh başlatma / kapatma komut dosyaları çalıştırılmaz. Giriş kabukları source / etc / profile ve ardından $ HOME / .profile. ENV ortam değişkeni çağırmada ayarlanmışsa, $ ENV profil betiklerinden sonra kaynaklanır. ENV değeri, bir yol adı olarak yorumlanmadan önce parametre genişletmeye, komut ikamesine ve aritmetik genişletmeye tabi tutulur. [ man zshall, "Uyumluluk" ].
ArchWiki ZSH bağlantı diyor ki:
Oturum açma sırasında, Zsh aşağıdaki dosyaları bu sırayla sağlar:
/ etc / profile
Bu dosya, oturum açıldığında tüm Bourne uyumlu kabuklardan elde edilir
Bu implys /etc/profile
edilir hep okumak tarafından zsh
Girişte - Ben Arch Linux projesi ile herhangi bir deneyimi yok; wiki bu dağıtım için doğru olabilir, ancak genellikle doğru değildir . Bilgi , zsh kılavuz sayfalarına kıyasla yanlış ve OS X'teki zsh için geçerli görünmüyor ( $PATH
küme içindeki yollar, /etc/profile
zsh oturumlarıma ulaşmaz).
Soruyu ele almak için:
rvm, python, düğüm vb. eklentilerimi $ PATH'ıma tam olarak nereye yerleştirmeliyim?
Genellikle, kızkardeşimi ihraç edeceklerini $PATH
gelen ~/.zshrc
ancak bir okuma sahip 's değerinde zshall adam sayfasında, özellikle "başlatma / kapatma DOSYALAR" bölümü - ~/.zshrc
için okunan interaktif veya ihtiyaçlarınıza uygun olmayabilir kabukları, - İstersen $PATH
için zsh
sizin tarafınızdan çağrılan her kabuk (hem hem interactive
değil, hem de login
değil, vb.), o zaman ~/.zshenv
daha iyi bir seçenektir.
Kullanmam gereken belirli bir dosya var mı (yani, şu anda kurulumumda bulunmayan .zshenv), şu anda kullandığımlardan biri mi yoksa önemli mi?
Başlangıçta okunan bir sürü dosya var (bağlantılı man
sayfaları kontrol edin ) ve bunun bir nedeni var - her dosyanın kendine özgü bir yeri var (her kullanıcı için ayarlar, kullanıcıya özel ayarlar, oturum açma kabukları için ayarlar, her kabuk için ayarlar, vb).
Varolmama konusunda endişelenmeyin ~/.zshenv
- ihtiyacınız varsa, yapın ve okunsun.
.bashrc
ve .bash_profile
edilir değil tarafından okunan zsh
açıkça onları kaynak sürece ~/.zshrc
veya benzeri; arasındaki sözdizimi bash
ve zsh
olduğu değil her zaman uyumlu. Hem .bashrc
ve .bash_profile
için tasarlanmış bash
ayarlar değil zsh
ayarları.
.bashrc
ve.bash_profile
okumazzsh
ben halen benim sahip olarakrvm
yapılacak ilave$PATH
içinde.bashrc
ve benimpython
de eklenmesi.bash_profile
ve her iki gayet ekleniyor. Her durumda, tüm diğer yapılandırmalarım$PATH
orada~/.zshrc
olduğu için tüm dışa aktarmalarımı konumuna taşıyacağımzsh
. İtiraf etmeliyim ki farklı mermi türlerine pek aşina değilim. Gönderdiğiniz bağlantıları okurken, etkileşimli bir kabuk kullanıyorum, ancak emin olmak için daha fazlasını okuyacağım ... Tekrar teşekkürler!