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.
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. |
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 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.
echo 'export PATH=$PATH:/usr/local/bin' >> ~/.bashrc source ~/.bashrc