Basit şeyler
PATH=$PATH:~/opt/bin
veya
PATH=~/opt/bin:$PATH
~/opt/bin
sonunda eklemek isteyip istemediğinize bağlı olarak (birden fazla klasörde aynı adda bir program olması durumunda diğer tüm dizinlerden sonra aranacak) veya başlangıçta (diğer tüm dizinlerden önce aranacak).
Aynı anda birden fazla giriş ekleyebilirsiniz. PATH=$PATH:~/opt/bin:~/opt/node/bin
ya da sipariş çalışmasındaki değişiklikler gayet iyi. Koymayın export
ek komplikasyonlar olduğu gibi satır başında ( “bash dışındaki kabukları üzerinde Notlar” başlığı altında aşağıya bakınız).
Sizin PATH
birçok farklı bileşen tarafından oluşturuluyorsa, yinelenen girişlerle sonuçlanabilir. Bkz ev dizin yolu komut Unix tarafından keşfedilmeyi nasıl eklenir? ve yinelenen $ PATH girişlerini yinelenenleri eklemek veya kaldırmaktan kaçınmak için awk komutuyla kaldırın.
Bazı dağıtımlar ~/bin
, eğer varsa, PATH’nize otomatik olarak konur .
Nereye koymak
Değiştirmek için çizgi koyun PATH
içinde ~/.profile
, ya da ~/.bash_profile
bu da sahip buysa.
Not ~/.bash_rc
herhangi bir program tarafından okunan ve olmayan ~/.bashrc
Bash interaktif örneklerinin yapılandırma dosyasıdır. İçindeki ortam değişkenlerini tanımlamamalısınız ~/.bashrc
. Doğru yer gibi ortam değişkenleri tanımlamak PATH
olduğu ~/.profile
(ya ~/.bash_profile
sen bash dışındaki kabukları umurumda değil ise). Bkz. Aralarındaki fark nedir ve hangisini kullanmalıyım?
İçine koymayın /etc/environment
veya ~/.pam_environment
: bunlar kabuk dosyaları değildir $PATH
, orada olduğu gibi değiştirmeleri kullanamazsınız . Bu dosyalarda, bir değişkeni geçersiz kılabilirsiniz, buna ekleyemezsiniz.
Bazı sistem komut dosyalarındaki potansiyel komplikasyonlar
export
Değişkenin zaten çevrede olup olmadığına ihtiyacınız yok : değişkenin değerindeki herhangi bir değişiklik çevreye yansır PATH
. tüm unix sistemleri onu çok erken başlattı (aslında ilk süreçte, aslında).
Giriş zamanında, PATH
zaten ortamda bulunduğunuza ve zaten bazı sistem dizinlerini içerdiğinize güvenebilirsiniz . Eğer sanal ortamda çeşit kurarken erken infaz edilebilir bir senaryo yazıyoruz, o emin olmanız gerekebilir PATH
eğer: Boş olmayan ve ihraç olduğu PATH
hala ayarlanmazsa, daha sonra böyle bir şey PATH=$PATH:/some/directory
kuracak PATH
kadar :/some/directory
ve boş komponent başında geçerli dizin (benzeri .:/some/directory
) anlamına gelir .
if [ -z "${PATH-}" ]; then export PATH=/usr/local/bin:/usr/bin:/bin; fi
Bash dışındaki kabukları üzerine notlar
Bash, ksh ve zsh olarak, export
özel sözdizimi ve her iki PATH=~/opt/bin:$PATH
ve export PATH=~/opt/bin:$PATH
hatta doğru olanı yap. Diğer Bourne / POSIX tarzı çizgi gibi kabuklar ( /bin/sh
birçok sistemde bulunur), export
iki farklılığı ifade eden sıradan bir komut olarak ayrıştırılır:
Böylece çizgi gibi kabukları , ilk boşluğa kadar değeri takiben değişmez dizeye export PATH=~/opt/bin:$PATH
ayarlar .
(çıplak bir atama) tırnak gerektirmez ve doğru olanı yapar. Taşınabilir bir komut dosyasında kullanmak istiyorsanız , yazmanız veya (ya da tilde genişleme yapmayan ve kabul etmeyen Bourne kabuğunun bile taşınabilmesi için) yazmanız gerekir .PATH
~/opt/bin/:
PATH
PATH=~/opt/bin:$PATH
export
export PATH="$HOME/opt/bin:$PATH"
PATH=~/opt/bin:$PATH; export PATH
PATH=$HOME/opt/bin:$PATH; export PATH
export var=value
Ne Bourne mermilerinde bu doğru değildi (asıl Bourne mermisinde olduğu gibi, modern POSIX tarzı mermilerde değil), ancak bugünlerde böyle eski mermilerle karşılaşmanız pek mümkün değil.