LU05b - Systemvariablen
Systemvariablen (auch Umgebungsvariablen genannt) sind spezielle Variablen, die von der Shell und dem Betriebssystem bereitgestellt werden. Sie enthalten wichtige Informationen über das System, die Umgebung und die aktuelle Shell-Sitzung. Systemvariablen sind für alle Prozesse in der Umgebung verfügbar und werden häufig genutzt, um Konfigurationsdaten bereitzustellen oder Verhalten zu steuern.
Eigenschaften von Systemvariablen
- Sie werden automatisch beim Starten der Shell gesetzt.
- Sie können von Benutzern und Skripten gelesen und geändert werden.
- Viele Programme greifen auf diese Variablen zurück, um ihre Konfiguration zu steuern.
Wichtige Systemvariablen
Hier sind einige der am häufigsten verwendeten Systemvariablen in Bash:
Variable | Beschreibung |
---|---|
HOME | Das Heimatverzeichnis des aktuellen Benutzers. |
PATH | Eine Liste von Verzeichnissen, in denen die Shell nach ausführbaren Programmen sucht. |
USER | Der Benutzername des aktuell angemeldeten Benutzers. |
PWD | Das aktuelle Arbeitsverzeichnis. |
SHELL | Der Pfad zur Standard-Shell des Benutzers. |
LANG | Die Spracheinstellung der Shell. |
LOGNAME | Der Login-Name des Benutzers. |
EDITOR | Der Standardeditor für die Shell. |
UID | Die Benutzer-ID des aktuellen Benutzers. |
Systemvariablen anzeigen
Sie können alle aktuell gesetzten Systemvariablen mit dem Befehl env
oder printenv
anzeigen:
env
Um den Wert einer einzelnen Variable zu überprüfen, verwenden Sie `echo`:
echo $HOME echo $PATH
Systemvariablen ändern
Systemvariablen können innerhalb der Shell oder eines Skripts geändert werden. Änderungen gelten jedoch nur für die aktuelle Sitzung, es sei denn, sie werden in eine Konfigurationsdatei wie ~/.bashrc
oder ~/.bash_profile
geschrieben.
Beispiel: Ändern der PATH
-Variable
export PATH=$PATH:/usr/local/bin
Hier wird /usr/local/bin
am Ende der bestehenden PATH
-Variable hinzugefügt.
Temporäre vs. Permanente Änderungen
- Temporär: Änderungen gelten nur für die aktuelle Sitzung.
- Permanent: Schreiben Sie die Änderungen in eine Shell-Konfigurationsdatei, z. B. `~/.bashrc`:
echo 'export PATH=$PATH:/usr/local/bin' >> ~/.bashrc source ~/.bashrc