544 Stimmen

Setzen von Umgebungsvariablen unter Mac OS X Lion

Wenn jemand sagt: "Bearbeiten Sie Ihre .plist-Datei" oder "Ihr .profile" oder ".bash_profile" usw., verwirrt mich das nur. Ich habe keine Ahnung, wo diese Dateien sind, wie ich sie erstellen kann, wenn ich das tun muss, usw., und auch, warum es so viele verschiedene zu geben scheint (warum? Tun sie unterschiedliche Dinge?)

Könnte also bitte jemand einem früheren Windows-Benutzer (der sich verzweifelt mit der angenehmen, wenn auch anfangs etwas verwirrenden OS X-Welt vertraut machen möchte) sehr geduldig erklären, wie man dies Schritt für Schritt macht?

Ich brauche die Variablen sowohl für GUI-Anwendungen als auch für Befehlszeilenanwendungen, und im Moment ist es für ein Ameisenskript, das die Variablen benötigt, aber es wird höchstwahrscheinlich auch andere Bedürfnisse geben.

Bitte beachten Sie, dass ich auch Lion habe, da viele der Antworten, die Sie beim Googeln finden, für Lion veraltet zu sein scheinen...

Beachten Sie auch, dass ich praktisch keine Erfahrung im Umgang mit dem Terminal habe. Ich bin bereit, zu lernen, aber bitte erklären Sie für einen Anfänger ...

23voto

vol7ron Punkte 38053

Vereinfachte Erläuterung

Dieser Beitrag/diese Frage ist schon etwas älter, daher werde ich eine vereinfachte Version für Benutzer von OS X Lion beantworten. Standardmäßig hat OSX Lion keine der folgenden Dateien:

  • ~/.bashrc
  • ~/.bash_profile
  • ~/.Profil

Wenn Sie irgendetwas im Terminal gemacht haben, können Sie höchstens ~/.bash_history sehen

Was es bedeutet

Sie müssen die Datei erstellen, in der Sie Ihre Standard-Bash-Befehle festlegen (üblicherweise in ~/.bashrc). Dazu können Sie einen beliebigen Editor verwenden, obwohl es einfacher ist, dies im Terminal zu tun:

  1. %> emacs .profile
  2. [von w/in emacs type:] source ~/.bashrc
  3. [von w/in emacs type:] Ctrl + x Ctrl + s (zum Speichern der Datei)
  4. [von w/in emacs type:] Ctrl + x Ctrl + c (um emacs zu schließen)
  5. %> emacs .bashrc
  6. (aus emacs heraus alle Bash-Befehle eintippen/einfügen, speichern und beenden)

Wenn Sie das Terminal das nächste Mal beenden und neu laden, sollte es alle Ihre Bash-Einstellungen laden. Um sicherzugehen, ist es eine gute Idee, Ihre Befehle in sinnvolle Dateinamen aufzuteilen. Zum Beispiel sollten Sie in ~/.bashrc eine source ~/.bash_aliases und legen Sie alle Ihre Alias-Befehle in ~/.bash_aliases ab.

19voto

Gilimanjaro Punkte 401

Was bei mir funktioniert hat, ist die Erstellung einer .launchd.conf mit den von mir benötigten Variablen:

setenv FOO barbaz

Diese Datei wird von launchd bei der Anmeldung gelesen. Sie können dem laufenden launchd eine Variable "on the fly" hinzufügen, indem Sie:

launchctl setenv FOO barbaz`

In der Tat, .launchd.cond enthält einfach launchctl-Befehle.

Auf diese Weise gesetzte Variablen scheinen in GUI-Anwendungen ordnungsgemäß vorhanden zu sein.

Wenn Sie versuchen, Ihre LANG- oder LC_-Variablen auf diese Weise zu setzen, und Sie iTerm2 verwenden, stellen Sie sicher, dass Sie die Einstellung "Locale-Variablen automatisch setzen" unter der Registerkarte "Terminal" des von Ihnen verwendeten Profils deaktivieren. Diese Einstellung scheint die Umgebungsvariablen von launchd zu überschreiben und hat in meinem Fall einen fehlerhaften LC_CTYPE gesetzt, was zu Problemen auf entfernten Servern führte (denen die Variable übergeben wurde).

(Die environment.plist scheint auf meinem Lion allerdings noch zu funktionieren. Sie können die RCenvironment um die Datei zu pflegen, anstatt sie manuell zu bearbeiten oder Xcode zu benötigen. Scheint immer noch auf Lion zu funktionieren, obwohl das letzte Update aus der Snow Leopard-Ära stammt. Das macht es zu meiner persönlich bevorzugten Methode).

16voto

Charaf JRA Punkte 7939

Einrichten der Umgebungsvariablen PATH unter Mac OS

Öffnen Sie das Programm Terminal (es befindet sich standardmäßig in Ihrem Ordner Anwendungen/Dienstprogramme). Führen Sie den folgenden Befehl aus

touch ~/.bash_profile; open ~/.bash_profile

Dadurch wird die Datei in Ihrem Standard-Texteditor geöffnet.

Für Android SDK als Beispiel :

Sie müssen den Pfad zu Ihrem Android SDK platform-tools und tools Verzeichnis hinzufügen. In meinem Beispiel werde ich "/Development/Android-sdk-macosx" als das Verzeichnis verwenden, in dem das SDK installiert ist. Fügen Sie die folgende Zeile hinzu:

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

Speichern Sie die Datei und beenden Sie den Texteditor. Führen Sie Ihr .bash_profile aus, um Ihren PATH zu aktualisieren.

source ~/.bash_profile

Jedes Mal, wenn Sie nun das Terminal-Programm öffnen, enthält Ihr PATH das Android SDK.

11voto

Yaw Joseph Etse Punkte 151

Hinzufügen von Pfadvariablen zu OS X Lion

Das war ziemlich einfach und hat bei mir im Terminal funktioniert:

$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

Eine ähnliche Antwort gab es hier: http://www.mac-forums.com/forums/os-x-operating-system/255324-problems-setting-path-variable-lion.html#post1317516

8voto

Do Nhu Vy Punkte 38281

Terminal öffnen:

vi ~/.bash_profile

Übertragen Sie die Änderungen auf das System (kein Neustart des Computers erforderlich):

source ~/.bash_profile

(Funktioniert auch mit macOS Sierra 10.12.1)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X