GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So fügen Sie ein Verzeichnis zu PATH in Linux hinzu

Wenn Sie einen Befehl in die Befehlszeile eingeben, sagen Sie der Shell im Grunde, dass sie eine ausführbare Datei mit dem angegebenen Namen ausführen soll. Unter Linux sind diese ausführbaren Programme wie ls , find , file und andere befinden sich normalerweise in mehreren verschiedenen Verzeichnissen auf Ihrem System. Jede Datei mit ausführbaren Berechtigungen, die in diesen Verzeichnissen gespeichert ist, kann von jedem Ort aus ausgeführt werden. Die häufigsten Verzeichnisse für ausführbare Programme sind /bin , /sbin , /usr/sbin , /usr/local/bin und /usr/local/sbin .

Aber woher weiß die Shell, welche Verzeichnisse nach ausführbaren Programmen zu durchsuchen sind? Durchsucht die Shell das gesamte Dateisystem?

Die Antwort ist einfach. Wenn Sie einen Befehl eingeben, durchsucht die Shell alle Verzeichnisse, die im Benutzer $PATH angegeben sind Variable für eine ausführbare Datei dieses Namens.

Dieser Artikel zeigt, wie Sie Ihrem $PATH Verzeichnisse hinzufügen in Linux-Systemen.

Was ist $PATH unter Linux #

Der $PATH Umgebungsvariable ist eine durch Doppelpunkte getrennte Liste von Verzeichnissen, die der Shell mitteilt, in welchen Verzeichnissen nach ausführbaren Dateien gesucht werden soll.

Um zu überprüfen, welche Verzeichnisse sich in Ihrem $PATH befinden , können Sie entweder den printenv verwenden oder echo Befehl:

echo $PATH

Die Ausgabe sieht in etwa so aus:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Wenn Sie zwei ausführbare Dateien mit demselben Namen in zwei verschiedenen Verzeichnissen haben, führt die Shell die Datei aus, die sich in dem Verzeichnis befindet, das in $PATH an erster Stelle steht .

Hinzufügen eines Verzeichnisses zu Ihrem $PATH #

Es gibt Situationen, in denen Sie andere Verzeichnisse zum $PATH hinzufügen möchten Variable. Beispielsweise können einige Programme an verschiedenen Orten installiert sein, oder Sie möchten vielleicht ein dediziertes Verzeichnis für Ihre persönlichen Skripte haben, diese aber ausführen können, ohne den absoluten Pfad zu den ausführbaren Dateien anzugeben. Dazu müssen Sie lediglich das Verzeichnis zu Ihrem $PATH hinzufügen .

Nehmen wir an, Sie haben ein Verzeichnis namens bin befindet sich in Ihrem Home-Verzeichnis, in dem Sie Ihre Shell-Skripte aufbewahren. Um das Verzeichnis zu Ihrem $PATH hinzuzufügen Geben Sie ein:

export PATH="$HOME/bin:$PATH"

Der export Der Befehl exportiert die geänderte Variable in die Umgebungen der untergeordneten Shell-Prozesse.

Sie können Ihre Skripte jetzt ausführen, indem Sie den Namen des ausführbaren Skripts eingeben, ohne den vollständigen Pfad zur Datei angeben zu müssen.

Diese Änderung ist jedoch nur temporär und nur in der aktuellen Shell-Sitzung gültig.

Um die Änderung dauerhaft zu machen, müssen Sie den $PATH definieren Variable in den Shell-Konfigurationsdateien. In den meisten Linux-Distributionen werden beim Starten einer neuen Sitzung Umgebungsvariablen aus den folgenden Dateien gelesen:

  • Globale Shell-spezifische Konfigurationsdateien wie /etc/environment und /etc/profile . Verwenden Sie diese Datei, wenn Sie möchten, dass das neue Verzeichnis allen Systembenutzern $PATH hinzugefügt wird .

  • Shell-spezifische Konfigurationsdateien pro Benutzer. Wenn Sie beispielsweise Bash verwenden, können Sie den $PATH festlegen Variable in ~/.bashrc Datei. Wenn Sie Zsh verwenden, lautet der Dateiname ~/.zshrc .

In diesem Beispiel setzen wir die Variable in ~/.bashrc Datei. Öffnen Sie die Datei mit Ihrem Texteditor und fügen Sie am Ende die folgende Zeile hinzu:

nano ~/.bashrc
~/.bashrc
export PATH="$HOME/bin:$PATH"

Speichern Sie die Datei und laden Sie den neuen $PATH in die aktuelle Shell-Session unter Verwendung von source Befehl:

source ~/.bashrc

Um zu bestätigen, dass das Verzeichnis erfolgreich hinzugefügt wurde, geben Sie den Wert Ihres $PATH aus indem Sie Folgendes eingeben:

echo $PATH

Schlussfolgerung #

Hinzufügen neuer Verzeichnisse zu Ihrem Benutzer oder globalen $PATH Variable ist ziemlich einfach. Dadurch können Sie Befehle und Skripte ausführen, die an nicht standardmäßigen Speicherorten gespeichert sind, ohne den vollständigen Pfad zur ausführbaren Datei eingeben zu müssen.

Dieselben Anweisungen gelten für alle Linux-Distributionen, einschließlich Ubuntu, CentOS, RHEL, Debian und Linux Mint.

Fühlen Sie sich frei, einen Kommentar zu hinterlassen, wenn Sie Fragen haben.


Linux
  1. So setzen Sie Ihre $PATH-Variable in Linux

  2. So fügen Sie ein Verzeichnis zu PATH in Linux hinzu [mit Beispielen]

  3. Linux – Ldd findet keinen Pfad, wie fügt man ihn hinzu?

  4. Wie kann ich dir $PATH in Makefile hinzufügen?

  5. So fügen Sie eine .so-Datei zum java.library.path in Linux hinzu

So fügen Sie einen Benutzer zu einer Gruppe in Linux hinzu

So fügen Sie ein Verzeichnis zu PATH in Linux hinzu [Kurztipp]

So ändern Sie eine Benutzer-Shell in Linux

So kopieren Sie das Verzeichnis unter Linux

So erstellen/fügen Sie Benutzer in Linux hinzu

Linux:Fügen Sie PATH ein Verzeichnis hinzu