Yapıştırmak için "PATH dışa aktar"


2

Sadece Lion'a yükselttim ve ilk defa bash kullanıyorum (önceki deneyimim csh ve tcsh ile). Beklenmeyen davranışlarla karşılaştım. Basit bir örnek:

  1. Aşağıdaki komutları içeren bir dosya oluşturuyorum:

    echo PATH BEFORE is $PATH
    PATH=/usr/local/fortran:$PATH
    export PATH
    echo PATH AFTER is $PATH
    
  2. Bir terminal açıyorum (bash olarak) ve yukarıda gösterilen dosyayı çalıştırıyorum. Beklenen sonucu tekrarlar:

    PATH BEFORE is /usr/bin: ...
    PATH AFTER is /usr/local/fortran:/usr/bin ...
    
  3. Sonra yazarım:

    echo $PATH
    

    ve /usr/local/fortran yolun bir parçası değil. Verme komutunun PATH'i yapışkanlaştıracağını varsaydım. Birisi bunun neden olmadığını açıklayabilir mi?

Yanıtlar:


6

Gerek kaynak böylece dosya ihraç değişkenlere mevcut kabuk için erişilebilir.

source script-file
echo $PATH

… Veya ekle export bash'in yapılandırma dosyalarından birine komut - OS X’te .bash_profile.


"kaynak" sorunu çözer. Teşekkürler
DMF

@DMF Her terminal oturumu için bağlı kalmasını istiyorsanız, cevabı güncellememe bakın.
slhck

Bu bir GUI'ye gömdüğüm kod içindir. Ben (ve istemiyorum) şeyleri değiştirmek istemiyorum. Bunun yerine, bu değişikliği $ PATH içinde sadece mevcut kabuk için yürütmek istiyorum. Böylece “kaynak” yaklaşımı sorunu çözüyor.
DMF

@DMF Tamam. Yanındaki onay işaretine tıklayarak Prince John Wesley'in cevabını kabul ettiğinizden emin olun! :)
slhck

1

Koymak

PATH=/usr/local/fortran:$PATH
export PATH

.bash_profile dosyanızda.

Komutu içeren dosyayı nasıl çalıştırırsınız? Kaynak bulmayı dene source (adam kaynağı)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.