Wo man Umgebungsvariablen auf dem Mac setzt

Anonim

In der Befehlszeile werden Umgebungsvariablen für die aktuelle Shell definiert und von jedem laufenden Befehl oder Prozess geerbt. Sie können alles bestimmen, von der Standard-Shell, dem PATH, dem Home-Verzeichnis des Benutzers bis hin zum Terminalemulationstyp, dem aktuellen Arbeitsverzeichnis, wo sich eine Verlaufsdatei befindet, Sprach- und Lokalisierungseinstellungen und darüber hinaus Shell-Variablen einbeziehen, die alles enth alten von Anpassungen an die Bash-Eingabeaufforderung, kolorierte ls-Ausgabe und Änderungen am Aussehen des Terminals bis hin zu Aliasen und vielem mehr.

Lassen Sie uns durchgehen, wie man Umgebungs- und Shell-Variablen auflistet und dann wie man neue Umgebungsvariablen in der Befehlszeile von Mac OS X setzt und hinzufügt. Wir behandeln dies sowohl für Bash- als auch für ZSH-Shells.

Anzeigen der aktuellen Umgebungs- und Shell-Variablen in Bash unter Mac OS X

Um schnell eine Liste von Umgebungsvariablen zu erh alten, können Sie den folgenden Befehl mit bash verwenden:

printenv

Um Umgebungsvariablen in zsh aufzulisten, verwenden Sie den folgenden Befehl: env

Oder optional:

echo $ENV_VAR

Wenn Sie eine vollständige Liste der Shell-Variablen sehen möchten, kann auch der 'set'-Befehl ausgegeben werden:

einstellen

Die Ausgabe dieser Befehle kann sehr lang sein, sodass Sie die Ausgabe möglicherweise durch die weniger oder mehr Befehle leiten möchten.

Einstellung von Umgebungsvariablen in der macOS-Befehlszeile mit zsh

Die zsh-Shell legt Umgebungsvariablen über die zshenv-Datei fest, die sich im Home-Verzeichnis des Benutzers befindet unter:

~/.zshenv

So können Sie zsh-Umgebungsvariablen hinzufügen, indem Sie diese Datei mit nano, vim usw. ändern oder Echo wie folgt verwenden:

echo 'export ENV_VAR=example' >> ~/.zshenv

Zum Beispiel:

echo 'JAVA_HOME=$(/usr/libexec/java_home)' >> ~/.zshenv

Einstellung von Umgebungsvariablen in der Mac OS X-Befehlszeile mit Bash

Da der Mac standardmäßig die Bash-Shell verwendet, können Sie Umgebungsvariablen in den Benutzerverzeichnissen .bash_profile festlegen, für ein aktives Benutzerkonto befindet sich der Pfad zu dieser Datei unter:

~/.bash_profile

Wenn Sie Ihre Shell geändert haben oder nicht sicher sind, welche Shell Sie verwenden, können Sie dies jederzeit überprüfen, indem Sie den Befehl echo $SHELL ausgeben, der anzeigt, welche Shell verwendet wird. Wir gehen davon aus, dass Sie immer noch die Standard-Bash-Shell von OS X verwenden, daher fügen wir neue Umgebungsvariablen hinzu, indem wir .bash_profile mit nano ändern – Sie können vi, emacs oder einen anderen Texteditor verwenden, wenn Sie möchten, aber wir behandeln Nano wegen seiner Einfachheit.

Öffnen Sie zunächst .bash_profile im Nano-Texteditor:

nano .bash_profile

Sie können Umgebungsvariablen und Shell-Variablen in neue Zeilen einfügen, wenn es bereits Daten in der .bash_profile-Datei gibt, stellen Sie einfach sicher, dass Sie neue Variablen in eine neue leere Zeile einfügen, indem Sie die Pfeiltasten und verwenden Eingabetaste nach Bedarf.

Nehmen wir ein Beispiel und sagen wir, wir werden die Umgebungsvariablen JAVA_HOME und JRE_HOME in .bash_profile setzen, indem wir Folgendes zu neuen Zeilen der Datei hinzufügen:

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

Angenommen, wir sind jetzt fertig, speichern Sie die an .bash_profile vorgenommenen Änderungen, indem Sie Strg+o drücken (das ist ein o wie bei otter), und verlassen Sie dann Nano, indem Sie Strg+X drücken

Änderungen und Ergänzungen an Umgebungsvariablen erfordern einen Neustart der Shell oder das Spawnen einer neuen Shell.

Festlegen temporärer Umgebungsvariablen in OS X

Es ist erwähnenswert, dass Sie auch temporäre Umgebungsvariablen in Bash setzen können, indem Sie den Befehl „export“ selbst verwenden, obwohl diese nur so lange bestehen bleiben, wie die aktuelle Bash-Shell aktiv bleibt. Wenn Sie beispielsweise einen temporären Pfad zu ~/bin/ hinzufügen möchten, können Sie den folgenden Befehl verwenden:

export PATH=$PATH:~/bin

Auch hier ist der Befehl „export“, der von selbst ausgeführt wird und nicht in .bash_profile enth alten ist, nur eine vorübergehende Einstellung, und die Umgebungsvariable bleibt nicht bestehen, es sei denn, Sie fügen sie zu .bash_profile hinzu.

Wenn Sie tatsächlich einen neuen PATH zur Verwendung hinzufügen möchten, sollten Sie ihn mit ziemlicher Sicherheit zu .bash_profile hinzufügen, indem Sie den entsprechenden Exportbefehl in die Datei einfügen.

Über die Bash-Shell hinaus: Wenn Sie die Standard-Shell Ihrer Terminal-App von bash auf tcsh, zsh, sh, ksh, fish oder eine der anderen alternativen Shells da draußen geändert haben, brauchen Sie einfach um das entsprechende Profil oder die RC-Datei für diese bestimmte Shell zu ändern (.tschrc, .cshrc, .profile usw.).

Wo man Umgebungsvariablen auf dem Mac setzt