Umgebungsvariablen sind eine Art von Variablen, die in der Shell definiert und während der Programmausführung benötigt werden. Sie werden oft in Shell-Programmen verwendet, um verschiedene Operationen auszuführen.
Der Geltungsbereich einer Variablen bezieht sich auf den Bereich, in dem auf sie zugegriffen oder sie definiert werden kann. Unter Linux kann der Gültigkeitsbereich einer Umgebungsvariablen entweder global /systemweit oder lokal sein. Einige gängige Beispiele für Umgebungsvariablen in Linux sind:
- PWD – zeigt den Pfad des aktuellen Arbeitsverzeichnisses an
- HOME – gibt den Pfad des Home-Verzeichnisses an
- HOSTNAME – gibt den Namen des Hosts aus
- EDITOR – zeigt den Standard-Dateieditor
In dieser Anleitung lernen wir, wie man Umgebungsvariablen in Linux setzt und zurücksetzt.
Umgebungsvariablen mit dem Exportbefehl festlegen
Eine einfache Möglichkeit, Umgebungsvariablen festzulegen, ist die Verwendung des Exportbefehls. Wir müssen der Variablen einen Namen geben, der für den Zugriff in der Shell verwendet wird, und einen Wert, um Daten zu speichern
Syntax:
$ export NAME = VALUE
Legen Sie zum Beispiel Ihren Variablennamen
fest$ export VAR ="value"
Bei Verwendung des export-Befehls wird die Umgebungsvariable nur für die aktuelle Shell-Sitzung gesetzt. Daher ist die Umgebungsvariable nicht mehr zugänglich, wenn Sie ein neues Terminal öffnen oder Ihr System neu starten.
Um den Wert Ihrer Umgebungsvariable auf der Shell auszugeben, können Sie einen der angezeigten Befehle verwenden;
$ printenv variable
$ echo $variable
Hinweis:Bei Verwendung des echo-Befehls sollte dem Variablennamen ein Dollarzeichen vorangestellt werden.
Benutzerweite Umgebungsvariablen unter Linux festlegen
Dies sind die Variablen, die für einen bestimmten Benutzer definiert wurden und immer dann ausgeführt werden, wenn sich dieser Benutzer über eine lokale oder Remote-Anmeldesitzung anmeldet. Sie werden in den folgenden Konfigurationsdateien im Home-Verzeichnis des Benutzers festgelegt und geladen:bashrc, .bash profile, .bash login, und .profil.
Verwendung der .bashrc-Datei
Die .bashrc Datei ist ein Skript, das geladen wird, wenn ein Benutzer eine neue Terminalsitzung öffnet. Umgebungsvariablen in dieser Datei werden immer dann ausgeführt, wenn eine neue Sitzung gestartet wird.
Fügen Sie Ihrer .bashrc-Datei beispielsweise wie gezeigt eine Variable NEW_VAR hinzu:
$ sudo vi .bashrc
$ export NEW_VAR =”Linux”
Speichern Sie Ihre Datei und laden Sie die .bashrc-Datei mit dem folgenden Quellbefehl neu, damit die Änderungen angewendet werden:
$ source ~/.bashrc
Drucken Sie die neue Variable aus:
$ echo $NEW_VAR
Die Variable ist jetzt dauerhaft, wenn Sie neue Sitzungen öffnen oder Ihr System neu starten
Verwendung von .bash_profile
Ändern Sie die Datei .bash_profile, um Umgebungsvariablen hinzuzufügen, die für Remote-Anmeldesitzungen verfügbar sind.
$ sudo vi .bash_profile
$ export $VAR1 ="Linux"
Laden Sie als Nächstes die .bashrc-Datei mit dem folgenden Quellbefehl neu, damit die Änderungen wirksam werden.
$ source ~/.bash_profile
Drucken Sie die neue Variable aus:
$ echo $VAR1
Setzen Sie systemweite Umgebungsvariablen in Linux
Dies sind systemweite Umgebungsvariablen, dh sie stehen allen Benutzern des Systems zur Verfügung. Diese Variablen befinden sich in den folgenden Verzeichnissen und Dateien, die systemweite Konfigurationsdateien enthalten:/etc/environment, /etc/profile, /etc/profile.d/, /etc/bash.bashrc, /etc/profile.d /, /etc/profile.d/, /etc/profile.d/, /etc/profile.d/, /etc/profile
Verwendung der Datei /etc/bash.bashrc
Fügen Sie eine systemweite Umgebungsvariable zu /etc/bash.bashrc hinzu Datei. Es wird den Benutzern zur Verfügung stehen, wenn einer von ihnen ein neues Terminal startet, aber es kann nicht aus der Ferne darauf zugegriffen werden.
$ export VAR1='Linux'
Laden Sie nun die Datei /etc/bash.bashrc neu, damit die Änderungen wirksam werden.
$ source /etc/bash.bashrc
Aus der obigen Ausgabe kann auf die Variable sowohl vom normalen Benutzer als auch von root zugegriffen werden.
Verwendung der /etc/profile-Datei
Um eine Umgebungsvariable hinzuzufügen, die verfügbar ist, wenn einer der Benutzer Ihres Systems remote darauf zugreift, ändern Sie die „/etc/profile“ Datei. Nachdem Sie die Variable hinzugefügt haben, laden Sie die Datei neu.
$ sudo vi /etc/profile
$ export VAR='Linux'
$ source /etc/profile
$ echo $VAR
Aus dem obigen Beispiel ist die Variable für einen neuen Benutzer verfügbar, der sich remote angemeldet hat
Verwendung der /etc/environment-Datei
Um eine Umgebungsvariable hinzuzufügen, die allen Benutzern sowohl bei lokalen als auch bei Remote-Anmeldesitzungen zur Verfügung steht, fügen Sie die Variable in /etc/environment hinzu Datei.
$ sudo vi /etc/environment
$ export MY_VAR='Linux'
$ source /etc/environment
$ echo $MY_VAR
Umgebungsvariablen unter Linux zurücksetzen
Nachdem Sie nun gelernt haben, wie Sie Umgebungsvariablen auf Ihrem System festlegen, müssen Sie sie möglicherweise entfernen, wenn Sie sie nicht mehr benötigen.
Um Umgebungsvariablen in Linux zurückzusetzen, verwenden Sie den unset-Befehl oder entfernen Sie Variableneinträge aus Ihren Systemkonfigurationsdateien.
Verwenden Sie die folgende Syntax, um eine Umgebungsvariable in Linux zurückzusetzen:
$ unset <variable>
Deaktivieren Sie beispielsweise eine der oben genannten Variablen:
$ unset NEW_VAR
Um dies zu überprüfen, geben Sie die Variable aus:
Im Terminal wird nichts angezeigt.
Hinweis :Umgebungsvariablen, die in den systemweiten oder benutzerweiten Konfigurationsdateien definiert sind, können nur gelöscht werden, indem sie aus diesen Dateien entfernt werden. Laden Sie danach die Datei mit dem Quellbefehl neu, damit die Änderungen wirksam werden.
$ source <file-name>
Schlussfolgerung
Sie haben gesehen, wie man unter Linux sowohl lokale als auch persistente Umgebungsvariablen setzt und zurücksetzt.