Mac OS X Lion'da ortam değişkenlerini ayarlama


532

Birisi ".plist dosyanızı düzenleyin" veya ".profile" veya ".bash_profile" vb. Dediğinde, bu sadece kafamı karıştırıyor. Bu dosyaların nerede olduğu hakkında bir fikrim yok, nasıl yapmalıyım, onları nasıl oluşturabilirim, vb.

Öyleyse birisi önceki bir Windows kullanıcısına çok sabırla açıklayabilir mi (başlangıçta biraz OS X dünyasını karıştırıyorsa hoşuna daha fazla aşina olmak istiyor) bu adım adım nasıl yapılır?

Ben GUI uygulamaları ve komut satırı uygulamaları için ayarlanacak değişkenlere ihtiyacım var ve şu anda değişkenleri gerektiren bir karınca komut dosyası için, ama büyük olasılıkla diğer ihtiyaçları da olacaktır.

Unutmayın ki ben de Lion'a sahibim, çünkü Google'a aldığınız cevapların çoğu Lion için modası geçmiş gibi görünüyor ...

Ayrıca Terminal kullanmada neredeyse sıfır deneyimim olduğunu unutmayın. Öğrenmeye hazırım, ama lütfen bir acemi için açıklayın ...


Bahar gibi bir uygulamadan okumaya çalışırsanız cevabın hiçbiri işe yaramaz.
Mehraj Malik

Yanıtlar:


403

İlk olarak, OS X hakkında bilinmesi gereken bir şey, Unix üzerine kurulu olmasıdır. Burada .bash_profile devreye girer. OS X'te Terminal uygulamasını başlattığınızda, varsayılan olarak bir bash kabuğu alırsınız. Bash kabuğu Unix'ten gelir ve yüklendiğinde .bash_profile komut dosyasını çalıştırır. Kullanıcının ayarlarınızı değiştirmesi için bu komut dosyasını değiştirebilirsiniz. Bu dosya şurada bulunur:

~/.bash_profile

Mavericks için güncelleme

OS X Mavericks ortamı kullanmaz. List - en azından OS X windows uygulamaları için değil. Pencereli uygulamalar için launchd yapılandırmasını kullanabilirsiniz . Terminalde kullanılan bash kabuğunun bir parçası olduğu için .bash_profile hala desteklenmektedir.

Sadece aslan ve dağ aslanı

OS X pencereli uygulamalar, ortam.plist dosyanızdan ortam değişkenleri alır. ".Plist" dosyası ile kastedilen budur. Bu dosya şurada bulunur:

~/.MacOSX/environment.plist

Environment.plist dosyanızda bir değişiklik yaparsanız, Terminal uygulaması da dahil olmak üzere OS X windows uygulamalarında bu ortam değişkenleri ayarlanır. .Bash_profile dosyanızda ayarladığınız ortam değişkenleri yalnızca bash kabuklarınızı etkiler.

Genellikle yalnızca .bash_profile dosyamda değişkenler ayarladım ve .plist dosyasını (veya Mavericks'teki launchd dosyasını) değiştirmem. Çoğu OS X pencereli uygulamanın herhangi bir özel ortama ihtiyacı yoktur. Yalnızca bir uygulamanın gerçekten belirli bir ortam değişkenine ihtiyacı olduğunda, ortam.plistini (veya Mavericks'teki launchd dosyasını) değiştiririm.

İstediğiniz gibi .bash_profile yerine ortam.plist dosyasını değiştirmek gibi görünüyor.

Son bir şey, eğer bu dosyaları ararsanız, onları bulamayacağınızı düşünüyorum. Doğru hatırlıyorsam, ilk Lion kurulumumda değildiler.

Düzenleme: İşte bir plist dosyası oluşturmak için bazı talimatlar.

  1. Xcode'u aç
  2. Dosya -> Yeni -> Yeni Dosya ... 'yı seçin.
  3. Mac OS X altında Kaynaklar'ı seçin
  4. Bir plist dosyası seçin
  5. Diğer istemleri izleyin

Dosyayı düzenlemek için, bir menü almak üzere Control tuşunu basılı tutup Satır Ekle'yi seçebilirsiniz. Daha sonra bir anahtar / değer çifti ekleyebilirsiniz. Ortam değişkenleri için anahtar, ortam değişkeni adıdır ve değer, bu ortam değişkeni için gerçek değerdir.

Plist dosyası oluşturulduktan sonra istediğiniz zaman değiştirmek için Xcode ile açabilirsiniz.


Tamam teşekkürler. Ben tilde benim ana klasör denilen anlamına geldiğini anladım, doğru (yani / Users / Anders benim durumumda)? Eğer yoksa, bahsettiğim isimlerle yeni bir boş metin dosyası oluşturmalıyım (nokta ile başlayan bir dosya oluşturmama izin verilecek mi?)? Ve sonra bir ortam değişkeni ayarlamak için bu dosyalara ne ekleyin? Örneğin, bir karınca komut dosyası için gereken bir klasöre işaret etmesi gereken bir AHF_OPT değişkeni eklemem gerekiyor, bunu bu iki dosyaya nasıl ekleyebilirim?
Anders

1
Denemek için iki şey: Birincisi, yapıştırılan dize ".dtd>" sonra yanlış bir noktalı virgül var mı? Belki bir kopyala ve yapıştır hatası, ama dosyayı okumak için Xcode almak için kaldırmak zorunda kaldı. İkinci olarak, efektlerin gerçekleşmesi için oturumu kapatıp tekrar açmanız gerekebilir.
David V

7
Ayrıca bilmek de faydalıdır ~/.bashrc. ~/.bashrcxterm / aterm gibi yeni bir giriş yapmayan bash kabuğunu her açtığınızda dosya çalışır ve ~/.bash_profileyalnızca sisteme ilk giriş yaptığınızda giriş kabuklarıyla çalışır.
DanSkeel

1
Ortam.plist'i eklemekle ilgili güzel ve net bir açıklama burada bulundu developer.apple.com/library/mac/#qa/qa1067/_index.html .
Ve son olarak

1
Büyük cevap, garip ifade hariç "OS X windows uygulaması." Bu, X11'den "X Windows" olarak bahsetmekten bile daha kötü. Aqua veya sadece ".app uygulamaları" olarak adlandırmak daha iyidir.
SigmaX

222

Sizin .profileveya .bash_profilebasitçe "ev" klasörünüzde bulunan dosyalardır. Bir Bulucu penceresi açar ve Sık Kullanılanlar bölmesinde hesap adınızı tıklatırsanız, bunları görmezsiniz. Bir Terminal penceresi açar ve lsdosyaları listelemek için yazarsanız hala görmezsiniz. Ancak bunları ls -aterminalde kullanarak bulabilirsiniz . Veya en sevdiğiniz metin düzenleyicisini açarsanız (OS X ile birlikte geldiği için TextEdit deyin) ve Dosya-> Aç'ı seçin ve Command+ Shift+ tuşlarına basın .ve hesap adınızı (giriş klasörü) tıklayın. Bunları görmüyorsanız, favori metin düzenleyicinizde bir tane oluşturabilirsiniz.

Şimdi, ortam değişkenleri eklemek nispeten basittir ve kavramsal olarak pencerelere oldukça benzerdir. Senin içinde .profilesadece eklenti, her satırda bir tane değişken adı ve değeri aşağıdaki gibi:

export JAVA_HOME=/Library/Java/Home
export JRE_HOME=/Library/Java/Home

vb.

"PATH" değişkeninizi değiştiriyorsanız, sistemin sizin için önceden ayarlanmış olan varsayılan PATH değerini eklediğinizden emin olun:

export PATH=$PATH:/path/to/my/stuff

Şimdi ilginç kısım, yeni değişkenlerin etkili olması için yeni bir Terminal penceresi açabilirsiniz .profileveya .bash_profiledosyayı yazmanız veya yeniden yüklemeniz ve içeriğin geçerli Terminal ortamınıza uygulanmasını sağlamanız gerekir.

Terminalinizdeki "set" komutunu kullanarak değişikliklerinizin etkili olup olmadığını kontrol edebilirsiniz. Sadece yazın set(veya set | moresayfalandırılmış bir listeyi tercih ederseniz) ve dosyaya ne eklediğinizden emin olun.

GUI uygulamalarına ortam değişkenleri eklemek için, bu normalde gerekli değildir ve size daha iyi bir cevap vermek için özellikle yapmaya çalıştığınız şey hakkında daha fazla bilgi almak istiyorum.


2
Teşekkürler, son bölümü tam olarak anlamadım, ya onları ayarlamak için bir Terminal penceresi açmak zorundayım ya da .profile? Ancak .profile yazmak için bir Terminal penceresi açmam gerekmez mi? Ve sadece bir Terminal penceresi açılarak otomatik olarak ayarlanırlarsa, neden bunu yazmam gerekiyor? Ve bir tane açtığımda, onlar kalıcı olarak kurulacaklar mı? Muhtemelen seni yanlış anladım, çünkü sorum bile benim için anlamlı değil ...
Anders

4
Profilinizi değiştirmeden önce açık bir Terminal pencereniz varsa, bu değişiklikler mevcut Terminalin ortamına yansıtılmaz. Hızlı çözümünüz yeni bir Terminal penceresi açmaktır. Bu kadar. Her yeni pencerede .profile dosyasındaki her şey bulunur. Her zaman. Eski, zaten açık olan pencereleri düzeltmenin yolu, ".profile" aralarında 2 nokta, 1 boşluk yazmaktır. "Set" komutu, onları ayarladığınız oturumu sonlandırdığınızda ölen ortam değişkenlerini ayarlamaktır. Bağımsız değişkenler olmadan "set" kullanıldığında, ayarlanmış olan değişkenler listelenir.
tokkov

1
Ahhh, yarattığım karışıklığı görüyorum. Hiçbir terminal penceresi açık değilse, her yeni pencere açıldığında .profile dosyasını yükler ve hiçbir şey yapmanız gerekmez. Öte yandan, terminal pencerenizde .profile dosyasını düzenlediyseniz veya terminal pencereleri önceden açılmışsa ve bunlarda değişiklik yapmak istiyorsanız, bunları . .profileyüklemek için yazmanız yeterlidir .
tokkov

2
Çalışmasını sağlayamıyorum. / Users / Anders altına bir dosya ekledim. AXF_DIR = / Applications / Anten / AHFormatterV53 dışa aktarma satırı ile karınca işlemi hala bir değişken AXF_DIR bulamıyor ... Ayrıca, Terminal'de set komutunu denedim, ve çok fazla bilgi aldım, ama bu değişken hakkında hiçbir şey yok Ayrıca emin olmak için sistemi de yeniden başlattığımı ve ayrıca yeni bir Terminal penceresi başlattığımı unutmayın ...
Anders

2
Sadece adlandırmayı deneyin .profile. Kısa süre önce satın aldığım bir makineye baktım ve .profilebu günleri kullanıyor gibi görünüyorlar.bash_profile
tokkov

77

Lion OS 10.7.x'deki PATH değişkeni ile ilgili biraz daha fazla bilgi:

PATH'ı global olarak ayarlamanız gerekirse, PATH sistem tarafından aşağıdaki sırayla oluşturulur:

  1. Dosyanın içeriğini ayrıştırma, /private/etc/pathsher satıra bir yol
  2. Klasörün içeriğini ayrıştırma /private/etc/paths.d. Bu klasördeki her dosya, her satırda bir yol olmak üzere birden çok yol içerebilir. Yükleme sırası önce dosya adına ve daha sonra dosyadaki satırların sırasına göre belirlenir.
  3. Bir setenv PATHde deyim /private/etc/launchd.confolacak, ekleme zaten 1. ve 2. yılında inşa yola bu yolu (o ana kadar inşa edilmiştir YOL değişkene referansta bulunmak için $ PATH kullanmamalısınız). Ancak, diğer iki seçenek göz önüne alındığında PATH'ın burada ayarlanması tamamen gereksizdir, ancak bu, tüm küresel ortam değişkenlerinin tüm kullanıcılar için ayarlanabileceği yerdir.

Bu yollar ve değişkenler tüm kullanıcılar ve uygulamalar tarafından devralınır, bu yüzden gerçekten globaldir - oturum kapatılır ve oturum açılırsa bu yollar sıfırlanmaz - sistem için oluşturulur ve herhangi bir kullanıcıya giriş yapma fırsatı verilmeden önce oluşturulur, bu nedenle, bu değişikliklerin geçerli olması için sistemin yeniden başlatılması gerekir.

BTW, OS 10.7.x Lion'un temiz bir yüklemesi environment.plistbulabileceğim bir şey yok , bu yüzden işe yarayabilir, ancak kullanımdan kaldırılabilir.


1
Evet, çok teşekkürler! Bu basit bir .profile biraz daha dahil.
Felixyz

2
Path.d.d yolunu kullanırsanız ve boşluk içeren klasörler içeren bir yolunuz varsa, bunları kaçışsız bırakmanız yeterlidir. onlardan kaçmaya çalışırsanız (ki bence yaygın bir uygulamadır?) işe yaramaz (en azından benim için). Bunu burada okudum: sweeting.org/mark/blog/2008/05/26/… ('boşlukları arayın'). Umarım bu herkese yardımcı olur!
Michael Trouw

1
@MichaelTrouw Yorumunuz bana bir ton yardımcı oldu! Alanlar için kaçışlar ekliyordum, ama bu gerekli değildi! Mac OS 10.9.2 kullanıyorum
kpsfoo

@jon, paths.darasındaki fark pathsnedir? Ayrıca, ilki ikincisini geçersiz kılar mı?
Pacerier

53
echo $PATH

geçerli yol değerini yazdırır

Sonra yap vim ~/.bash_profileve yaz

export PATH=$PATH:/new/path/to/be/added

burada eski yola ekliyorsunuz, bu nedenle eski yolu koruyor ve yeni yolunuzu ekliyor

o zaman yap

source ~/.bash_profile

bu onu yürütecek ve yolu ekleyecektir

sonra tekrar kontrol et

echo $PATH

2
"vim" komutu vim ~ / .bash_profile olmalıdır
Gönderiyi

31

Ne yazık ki bu cevapların hiçbiri yaşadığım problemi çözmedi.

İşte uğraşmak zorunda kalmadan basit bir çözüm bash. Benim durumumda, işe başlıyordu gradle(için Android Studio).

Btw, Bu adımlar OSX (Mountain Lion 10.8.5) ile ilgilidir

  • Terminal'i açın.
  • Aşağıdaki komutu çalıştırın:

    sudo nano /etc/paths(veya sudo vim /etc/pathsvim için)

    nano

  • Dosyanın altına gidin ve eklemek istediğiniz yolu girin.
  • Çıkmak için control-x tuşlarına basın.
  • Değiştirilen arabelleği kaydetmek için 'Y' girin.
  • Yeni bir terminal penceresi açın ve şunu yazın:

    echo $PATH

PATH sonuna eklenmiş yeni yolu görmelisiniz

Bu yayından şu ayrıntıları aldım:

http://architectryan.com/2012/10/02/add-to-the-path-on-mac-os-x-mountain-lion/#.UkED3rxPp3Q

Umarım bu başka birine yardımcı olabilir


Ne olursa olsun ihracat ihracat anlamaya ve yapmaya 3 saat sonra bunu denedim ve işe yaradı. Bir adım eksik. Ben ekleyeceğim.
1.21 gigawatts

@ 1.21gigawatts ahh harika, yardımcı oldu sevindim, düzenlemeler için teşekkürler
wired00

1
Güncelleme: Bu çalışır ancak düzenledikten sonra sistemi yeniden başlatmanız gerekir.
Anant Simran Singh

mükemmel çözüm!
Jayant Varshney

MacOS 10.12.X için mükemmel
Camille G.

23

Basitleştirilmiş Açıklama

Bu yazı / soru biraz eski, bu yüzden OS X Lion kullanıcıları için basitleştirilmiş bir versiyona cevap vereceğim. Varsayılan olarak, OSX Lion aşağıdaki dosyalardan hiçbirine sahip değildir:

  • ~ / .Bashrc
  • ~ / .Bash_profile
  • ~ / .Profile

Terminalde bir şey yaptıysanız en fazla ~ / .bash_history görebilirsiniz.

Ne demek

Varsayılan bash komutlarınızı ayarlamak için dosyayı oluşturmanız gerekir (genellikle ~ / .bashrc içinde). Bunu yapmak için, herhangi bir düzenleyici kullanın, ancak terminal içinde yapmak daha basittir:

  1. %> emacs .profile
  2. [emacs türünde:] source ~/.bashrc
  3. [w / in emacs türünden:] Ctrl + x Ctrl + s(dosyayı kaydetmek için)
  4. [emacs türünde w / 'den:] Ctrl + x Ctrl + c(emac'ları kapatmak için)
  5. %> emacs .bashrc
  6. [w / in emacs uygulamasından tüm bash komutlarınızı yazın / yapıştırın, kaydedin ve çıkın]

Terminalden bir sonraki çıkışınızda ve yeniden yüklediğinizde, tüm bash tercihlerinizi yüklemelidir. İyi bir ölçü için, komutlarınızı yararlı dosya adlarına ayırmak genellikle iyi bir fikirdir. Örneğin, ~ / .bashrc içinden bir source ~/.bash_aliasesve tüm diğer ad komutlarınızı ~ / .bash_aliases içine koymanız gerekir .


Neden onu kaldırdýlar?
Pacerier

@Pacerier Kaldırıp kaldırmadıklarından emin değilim, ancak özelleştirmeler olmadan bu dosyalar gerekli değildir. Sorun, terminal / kabuk, OSX veya BSD için yeni olan herkes için, bu dosyaların açık olmadığı ve bu nedenle öğrenilmesi daha zor olmasıdır.
vol7ron

Peki yerine ne koydular?
Pacerier

İsteğe bağlılar, bu yüzden hiçbir şeyle değiştirmediler; bir RC dosyası
vol7ron

18

Benim için işe yarayan .launchd.conf, ihtiyaç duyduğum değişkenleri içeren bir a oluşturmaktır :

setenv FOO barbaz

Bu dosya girişte launchd tarafından okunur. Aşağıdakileri kullanarak çalışan fırlatma aracına 'anında' bir değişken ekleyebilirsiniz:

launchctl setenv FOO barbaz`

Aslında, .launchd.condsadece launchctl komutlarını içerir.

Bu şekilde ayarlanan değişkenler GUI uygulamalarında düzgün bir şekilde mevcut gibi görünmektedir.

LANG veya LC_ değişkenlerinizi bu şekilde ayarlamaya çalışıyorsanız ve iTerm2 kullanıyorsanız, kullandığınız Profilin Terminal sekmesi altındaki 'Yerel ayar değişkenlerini otomatik olarak ayarla' ayarını devre dışı bıraktığınızdan emin olun. Bu, launchd'ın ortam değişkenlerini geçersiz kılıyor gibi görünüyor ve benim durumumda uzak sunucularda (bu değişkeni geçti) sorunlara neden olan kırık bir LC_CTYPE ayarlıyordu.

(Environment.plist yine de benim aslanım üzerinde çalışıyor gibi görünüyor. Dosyayı el ile düzenlemek veya Xcode yerine korumak için RCenvironment tercih bölmesini kullanabilirsiniz. Son güncelleme Snow Leopard'dan olmasına rağmen hala Lion üzerinde çalışıyor gibi görünüyor Kişisel olarak tercih ettiğim yöntem haline getiriyor.)


Açık ara en kolay cevap. Yalnızca tek bir terminal penceresini kapatmakla kalmayıp, değişikliklerin etkili olması için terminal uygulamasını tamamen kapatmanız ve yeniden açmanız gerektiğini unutmayın.
Timmmm

1
Bu cevap OP için kullanılamayacak kadar soyulmuş. Nasıl oluşturulur? Nerede?
HenryRootTwo

15

Mac OS'de PATH ortam değişkeninizi ayarlayın

Terminal programını açın (varsayılan olarak Applications / Utilites klasörünüzde bulunur). Aşağıdaki komutu çalıştırın

touch ~/.bash_profile; open ~/.bash_profile

Bu, dosyayı varsayılan metin düzenleyicinizde açar.

ANDROID SDK için örnek olarak:

Android SDK platform araçları ve araçlar dizininize yolu eklemeniz gerekir. Örneğimde SDK'nın kurulu olduğu dizin olarak "/ Development / android-sdk-macosx" kullanacağım. Aşağıdaki satırı ekleyin:

export PATH=${PATH}:/Development/android-sdk-macosx/platform-tools:/Development/android-sdk-macosx/tools

Dosyayı kaydedin ve metin düzenleyicisinden çıkın. PATH'inizi güncellemek için .bash_profile dosyanızı yürütün.

source ~/.bash_profile

Şimdi Terminal programını her açtığınızda PATH, Android SDK'sını içerecektir.


Teşekkürler. Nedenini bilmiyorum, ama sadece bu çözüm benim için çalıştı, yukarıdaki çözümler değil.
kroky

Dediğin gibi ortam değişkeni ekledim ama xcode içinde kullanamıyorum, bir fikrin var mı? Bunu başlık arama yolunda kullanmam gerekiyor. Şimdiden teşekkürler.
Yücel Bayram

11

OS X Lion'a Yol Değişkenleri Ekleme

Bu oldukça basitti ve benim için çalıştı, terminalde:

$echo "export PATH=$PATH:/path/to/whatever" >> .bash_profile #replace "/path/to/whatever" with the location of what you want to add to your bash profile, i.e: $ echo "export PATH=$PATH:/usr/local/Cellar/nginx/1.0.12/sbin" >> .bash_profile 
$. .bash_profile #restart your bash shell

Benzer bir yanıt buradaydı: http://www.mac-forums.com/forums/os-x-operating-system/255324-problems-setting-path-variable-lion.html#post1317516


1
Bunu ana dizininizin kökünden çalıştırmanız gerekeceğini belirtmek gerekir. cdHiçbir argüman ya da sunarak at burada olduğunu emin olun cd ~/.
ephsmith

3
Kabuğu yeniden başlatmaya da gerek yoktur. Kullanın source .bash_profile.
ephsmith

Bu yöntemi seviyorum çünkü kısa. Ama işe yaramıyor gibi görünüyor. Yaptığım echo "export PATH=$PATH:/Applications/XAMPP/xamppfiles/bin/mysql" >> .bash_profileYapabileceğim tek zaman Sonra mysql -u root -pben zaten kökünde çalıştırıyorum eğer olduğunu. Oysa Applications/XAMPP/xamppfiles/bin/mysql -u root -pher yerde kullanabilirim . Bahsedilen yeniden başlatma yaklaşımını denedim: Yaw ve @ ephsmith's.
kasavbere

Ayrıca, eğer kök (yani sudo su) olarak ech $ PATH yaparsam /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Applications/XAMPP/xamppfiles/bin. Ben kök değilim olsun/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
kasavbere

$PATHDeğişken (kök bir kullanıcı) kullanıcı özeldir.
ephsmith

7

Açık Terminal:

vi ~/.bash_profile

Değişikliği sisteme uygula (bilgisayarı yeniden başlatmaya gerek yok):

source ~/.bash_profile

(Ayrıca macOS Sierra 10.12.1 ile çalışın)


5

Özel PATH almadı Maverics Eclipse (komut dosyası değil GUI olarak başladı) ile ilgili sorun vardı. Yukarıda belirtilen tüm yöntemleri denedim. Sonunda gelen ipuçları dayalı basit çalışma cevabını buldu burada :

  1. Git /Applications/eclipse/Eclipse.app/Contents klasörüne

  2. Metin düzenleyicisi (veya XCode) ile Info.plist dosyasını düzenleyin , tam yollu ortam değişkeni için LSEnvironment sözlüğünü ekleyin . Ayrıca / usr / bin vb.

    <dict>
      <key>LSEnvironment</key>
      <dict>
            <key>PATH</key>
            <string>/usr/bin:/bin:/usr/sbin:/sbin:/dev/android-ndk-r9b</string>
      </dict>
      <key>CFBundleDisplayName</key>
      <string>Eclipse</string>
      ...
    
  3. İle uygulama için parametreleri yeniden yükle

    /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.fra‌​mework/Support/lsregister -v -f /Applications/eclipse/Eclipse.app
    
  4. Tutulmayı Yeniden Başlat


5

Sizi kişisel örneğimden çok gereksiz bir şekilde göstereyim.

  1. JDK'yı yükledikten sonra, yüklendiğinden emin olun. resim açıklamasını buraya girin
  2. Bazen macOS veya Linux, Windows'tan farklı olarak sizin için ortam değişkenini otomatik olarak ayarlar. Ama her zaman böyle değil. Öyleyse kontrol edelim. resim açıklamasını buraya girin Echo $ JAVA_HOME'dan sonraki satır, ortam değişkeni ayarlanmamışsa boş olur. Sizin durumunuzda boş olmalıdır.

  3. Şimdi bash_profile dosyanızın olup olmadığını kontrol etmemiz gerekiyor. resim açıklamasını buraya girin Benim durumumda zaten bash_profile'miz olduğunu gördünüz. Değilse, bir bash_profile dosyası oluşturmamız gerekir.

  4. Bir bash_profile dosyası oluşturun. resim açıklamasını buraya girin

  5. Bash_profile dosyasının orada olduğundan emin olmak için tekrar kontrol edin. resim açıklamasını buraya girin

  6. Şimdi bash_profile dosyasını açalım. macOS varsayılan TextEdit programını kullanarak açar. resim açıklamasını buraya girin

  7. Bu, ortam değişkenlerinin tutulduğu dosyadır. Yeni bir bash_profile dosyası açtıysanız, dosyanın boş olması gerekir. Benim durumumda, zaten python programlama dili ve Anaconda dağıtımı için ayarlanmıştı. Şimdi, sadece ilk satırı ekleyen Java için ortam değişkeni eklemeniz gerekiyor. İlk satırı VERBATIM yazmalısınız. SADECE ilk satır. TextEdit'i kaydedin ve kapatın. Ardından terminali kapatın. resim açıklamasını buraya girin

  8. Terminali tekrar açın. Ortam değişkeninin ayarlanıp ayarlanmadığını kontrol edelim. resim açıklamasını buraya girin


4

Salak rotayı izledim. Bunları / etc / profile sonuna ekledi

for environment in `find /etc/environments.d -type f`
do
     . $environment
done

bir klasör yarattı / etc / ortamlar içinde "oracle" veya "neyse" adında bir dosya oluşturdular ve buna ihtiyaç duyduğum şeyleri global olarak ekledim.

/ etc $ cat /etc/environments.d/Oracle

export PATH=$PATH:/Library/Oracle/instantclient_11_2
export DYLD_LIBRARY_PATH=/Library/Oracle/instantclient_11_2
export SQLPATH=/Library/Oracle/instantclient_11_2
export PATH=$PATH:/Library/Oracle/instantclient_11_2
export TNS_ADMIN=/Library/Oracle/instantclient_11_2/network/admin

1

Belki birine yardımcı olabilecek daha fazla ayrıntı:

Kendi keşiflerimden dolayı ortam değişkenlerini 8 farklı yoldan 7'sinde nasıl ayarlayacağımı biliyorum. Xcode altında geliştirdiğim bir uygulamaya bir envar almaya çalışıyordum. Hangisinin benim uygulamamın kapsamına girdiğini söylemek için bu farklı yöntemleri kullanarak "tracer" envars ayarladım. Aşağıdan, "putenv" gibi, argüman eklemek için Xcode'daki "şemayı" düzenlemenin işe yaradığını görebilirsiniz. Bu kapsamda neyi ayarlamadı: ~ / .MACOS / environment.plist, uygulamaya özel plist, .profile ve özel bir komut dosyası çalıştırmak için bir oluşturma aşaması ekleme (Xcode'da [en azından] ayarlamak için başka bir yol buldum biri ama izleyiciyi aradığımı unuttum ve şimdi bulamıyorum; belki başka bir makinede ....)

GPU_DUMP_DEVICE_KERNEL 3

GPU_DUMP_TRK_ENVPLIST (boş)

GPU_DUMP_TRK_APPPLIST (boş)

GPU_DUMP_TRK_DOTPROFILE (boş)

GPU_DUMP_TRK_RUNSCRIPT (boş)

GPU_DUMP_TRK_SCHARGS 1'dir

GPU_DUMP_TRK_PUTENV 1'dir

... Öte yandan, eğer Terminal'e gidip "set" dersem, onun aldığı tek şey .profile'dan geliyor (çevre seçeceğini düşünürdüm. liste, ve ben de eminim Terminalde ikinci bir izleyici envar gördüm, bu yüzden o zamandan beri muhtemelen bir şeyler sakat gitti. Uzun gün ....)


0

Adım 1: Açık ~/.bash_profile

Şimdi bir metin düzenleyici açılır:

Adım 2: Değişken adı büyük harflerle yazılmalıdır. bu örnekte değişkenNODE_ENV

Aşama 3: export NODE_ENV=development

Kaydet ve kapat.

Sisteminizi yeniden başlatın.

Bitti.

Env değişkenini kontrol etmek için: terminali açın ve yazın

echo $NODE_ENV 

0

Aşağıdaki komutları kullanarak herhangi bir ortam değişkenini ayarlamadan önce varsayılan terminal kabuğunun kontrol edilmesi önerilir :

$ echo $SHELL
/bin/zsh

Varsayılan terminaliniz benim durumumda olduğu gibi / bin / zsh (Z Kabuk) ise (Şahsen Z Kabuğunu tercih edin), bu ortam değişkenini ~ / .zshenv dosyasında aşağıdaki içeriklerle ayarlamanız gerekir (Bu örnekte, JAVA_HOME ortam değişkenini ayarlama , ancak diğerleri için de geçerlidir):

export JAVA_HOME="$(/usr/libexec/java_home)"

Benzer şekilde, yukarıda belirtilmeyen diğer terminal türlerinde, ortam değişkenini ilgili terminal env dosyasında ayarlamanız gerekir.

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.