Die Linux Path Umgebungsvariable

Niraj Menon 30 Januar 2023
  1. Verwendung von PATH in Linux
  2. Möglichkeiten zum Hinzufügen zur PATH-Umgebung in Linux
Die Linux Path Umgebungsvariable

Unter Linux bestimmt die Variable PATH-Umgebung den Speicherort von Programmen. Es ist eine Liste von Dateipfaden zu Verzeichnissen, in denen Binärdateien oder Symlinks abgelegt werden. Wenn ein Programmaufruf eingegeben wird, sucht die aktuelle Shell in PATH nach der entsprechenden Binärdatei.

In diesem Artikel wird erläutert, wie die Variable PATH-Umgebung bearbeitet wird, um Programme zu finden, die sich nicht an einem bestimmten Ort im Dateisystem befinden, wobei eine Bash shell-Befehlszeile vorausgesetzt wird.

Verwendung von PATH in Linux

Standardmäßig sucht die von Ihnen verwendete Shell nach der Umgebungsvariable PATH, um Befehle in den durch PATH angegebenen Verzeichnissen zu finden.

Wenn Sie beispielsweise cat, ein gängiges Linux-Dienstprogramm, eingegeben haben, sucht die Shell normalerweise in Verzeichnissen wie /usr/bin, /usr/local/bin, /usr/sbin und sucht nach a Programm namens cat und führen Sie es aus.

Möglichkeiten zum Hinzufügen zur PATH-Umgebung in Linux

Manchmal haben Sie möglicherweise Programme, die Sie an Orten auf Ihrem System installiert haben, die sich normalerweise nicht im PATH befinden, wie z.B. Ihr Home-Ordner, in einer Situation, in der Sie keinen Root-Zugriff haben, um in Orte wie /usr/bin zu installieren. Sie können einen Pfad an die Umgebungsvariable PATH anhängen, um dies zu tun.

Angenommen, Sie möchten den Pfad /home/$USER/local/bin – wobei $USER eine Shell-Variable ist, die Ihren Benutzernamen enthält und jedes Mal vordefiniert wird, wenn Sie eine neue Shell-Sitzung starten – an den PATH der Umgebung anhängen.

In Bash können Sie dies folgendermaßen tun:

export PATH=/home/$USER/local/bin:$PATH

Der Befehl export stellt sicher, dass der geänderte PFAD in alle Subshells oder andere child Befehle exportiert wird, die innerhalb der aktuellen Shell aufgerufen werden.

Die Verwendung von export ist normalerweise die sicherste Option, es sei denn, Sie müssen nur den PATH für die aktuelle Shell ändern, aber einen untergeordneten Prozess aufrufen, der den alten PATH-Wert verwendet. Denken Sie daran, dass Sie nur das Verzeichnis hinzufügen müssen, in dem der Befehl enthalten ist, nicht den tatsächlichen Pfad zum Befehl selbst.

Sie können auch PATH festlegen, ohne zuerst zu exportieren, den Befehl ausführen und dann den neuen PATH exportieren, nachdem der Befehl abgeschlossen ist, wie gezeigt:

PATH=/home/$USER/local/bin:$PATH
command-that-uses-old-PATH
export PATH

Wenn Sie beim Ausführen eines Skripts Variablen wie $USER verwenden müssen, sollten Sie PATH eine Zeichenfolge zuweisen, wie gezeigt:

export PATH="/home/$USER/local/bin:$PATH"

In einigen Situationen möchten Sie vielleicht den neuen Pfad an PATH anhängen, anstatt ihn voranzustellen, in Fällen, in denen die Priorität der Befehlsposition keine große Rolle spielt, z. B. wenn Sie einen neuen Befehl hinzufügen.

An PATH können Sie wie folgt anhängen:

export PATH=$PATH:/path/to/new/program