Wie füge ich dem PFAD ein Verzeichnis hinzu?

Wie füge ich dem Verzeichnis ein Verzeichnis hinzu $PATH in Ubuntu und die Änderungen dauerhaft machen?

Wobei ~/.profil zum Setzen von $ PATH

Ein Pfad, der in .bash_profile wird nur in einer Bash-Login-Shell gesetzt (bash -l).Wenn du deinen Weg in .profile es wird für Ihre vollständige Desktop-Sitzung verfügbar sein. Das bedeutet, dass sogar Metacity es verwenden wird.

Beispielsweise ~/.profile:

if [ -d "$HOME/bin" ] ; then  PATH="$PATH:$HOME/bin"fi

Übrigens können Sie die Pfadvariable eines Prozesses überprüfen, indem Sie sich seine Umgebung in ansehen /proc/[pid]/environ (ersetzen Sie [pid] durch die Nummer von ps axf). Z.B. Verwendung grep -z "^PATH" /proc/[pid]/environ

Beachten:

bash da eine Anmeldeshell nicht analysiert wird .profile wenn entweder .bash_profile oder .bash_login exists. Von man bash :

es sucht nach ~/ .bash_profile, ~/.bash_login und ~/.profil in dieser Reihenfolge und liest und führt Befehle aus dem ersten vorhandenen und lesbaren aus.

Siehe die antworten unten für Informationen über .pam_environment, oder .bashrc für interaktive Nicht-Login-Shells oder legen Sie den Wert global für alle Benutzer fest, indem Sie ein Skript in /etc/profile.d/ oder verwenden /etc/X11/Xsession.d/ um die Anzeigemanagersitzung zu beeinflussen.

Bearbeiten .bashrc in Ihrem Home-Verzeichnis und fügen Sie die folgende Zeile hinzu:

export PATH="/path/to/dir:$PATH"

Sie müssen Ihre Quelle .bashrc oder melden Sie sich ab (oder starten Sie das Terminal neu), damit die Änderungen wirksam werden. Um Ihre zu beschaffen .bashrc, einfach tippen

$ source ~/.bashrc

Der empfohlene Ort, um permanent zu definieren, systemweite Umgebungsvariablen, die für alle Benutzer gelten, sind in:

/etc/environment

(wo ist der Standard PATH ist definiert)

Dies funktioniert auf Desktop oder Konsole, Gnome-Terminal oder TTY, Regen oder Sonnenschein;)

  • Öffnen Sie zum Bearbeiten das Terminal und geben Sie Folgendes ein:

    sudoedit /etc/environment

    (oder öffnen Sie die Datei mit sudo in Ihrem bevorzugten Texteditor)

Damit es ohne Neustart funktioniert, führen Sie Folgendes aus . /etc/environment oder source /etc/environment. Da es sich bei dieser Datei nur um ein einfaches Skript handelt, wird es ausgeführt und weist den neuen Pfad der PATH Umgebungsvariable. Zum Überprüfen ausführen env und sehen Sie die PATH wert in der Auflistung.

Zusammenhang:

Ich denke, der kanonische Weg in Ubuntu ist:

  • erstellen Sie eine neue Datei unter /etc/profile.d/

    sudo vi /etc/profile.d/SCRIPT_NAME.sh
  • fügen Sie dort hinzu:

    export PATH="YOUR_PATH_WITHOUT_TRAILING_SLASH:$PATH"
  • und geben Sie ihm die Ausführungsberechtigung

    sudo chmod a+x /etc/profile.d/SCRIPT_NAME.sh

Für komplette Neulinge (wie ich), die sich mit GUI wohler fühlen:

  1. Öffne dein $HOME Ordner.
  2. Gehe zu BlickVersteckte Dateien anzeigen oder drücken Sie Ctrl + H.
  3. Rechtsklick auf .profile und klicken Sie auf Mit Texteditor öffnen.
  4. Scrollen Sie nach unten und fügen Sie hinzu PATH="$PATH:/my/path/foo".
  5. Speichern.
  6. Melden Sie sich ab und wieder an, um Änderungen zu übernehmen (Ubuntu tatsächlich laden lassen .profile).

Für persistente Umgebungsvariablen, die nur bestimmten Benutzern zur Verfügung stehen. Ich empfehle die offizielle Ubuntu-Dokumentation.

https://help.ubuntu.com/community/EnvironmentVariables

Unter Bezugnahme auf die obige Dokumentation habe ich meine eingerichtet Android SDK Pfad-Werkzeuge von:

  1. erstellen ~/.pam_environment datei im Home-Verzeichnis.
  2. deren Inhalt ist PATH DEFAULT=${PATH}:~/android-sdk-linux/tools.
  3. zusätzlicher benutzerdefinierter Benutzerpfad kann hinzugefügt werden, indem Pfade durch getrennt werden Doppelpunkt (:).
  4. dies erfordert neu anmelden, was bedeutet, dass Sie sich abmelden und wieder bei der Desktop-Umgebung anmelden müssen.

Setzen Sie diese Zeile in Ihre ~/.bashrc Datei.

Es wird aktualisiert, wenn Sie ein Terminal öffnen

BEARBEITEN: Basierend auf den Kommentaren unten, für eine allgemeinere Einstellung, die für alle Shells gilt (auch wenn Sie treffen Alt-F2 in Unity), fügen Sie die Zeile zu Ihrem hinzu ~/.profile Datei. Wahrscheinlich sollten Sie jedoch nicht beides tun, da der Pfad zweimal zu Ihrem Pfad hinzugefügt wird PATH umgebung, wenn Sie ein Terminal öffnen.

Um es systemweit festzulegen, hängen Sie die Zeile an export PATH=/path/you're/adding:$PATH bis zum Ende von /etc/profile.

Um das Verzeichnis nur für den angemeldeten Benutzer hinzuzufügen, hängen Sie dieselbe Zeile an ~/.bash_profile.

Hinzufügen zu .bashrc wird funktionieren, aber ich denke, die traditionellere Art, Ihre Pfadvariablen einzurichten, ist in .bash_profile durch Hinzufügen der folgenden Zeilen.

PATH=$PATH:/my/path/fooexport PATH

GEM dieser Thread es scheint, als ob Ubuntus Verhalten etwas anders ist als RedHat und Klone.

Im Terminal, cd zu the_directory_you_want_to_add_in_the_path

echo "export PATH=$(pwd):\${PATH}" >> ~/.bashrc

Das war nicht meine Idee. Ich habe diesen Weg gefunden, um den Pfad zu exportieren blog hier.

EnvironmentVariables - Community Help Wiki Es gibt alles, was Sie wissen müssen. Ich habe herausgefunden, dass viele Eingaben hier falsch waren oder zumindest die Methode nicht vorgeschlagen wurde. Dies ist eine großartige Information, mit der Sie herausfinden können, wo Sie Ihre Umgebungsvariable ändern müssen, basierend auf dem Grund, warum Sie dies tun, und genau, wie Sie es tun, ohne alles zu vermasseln (wie ich es nach einigen der oben genannten schlechten Ratschläge getan habe). Auf Wiedersehen und danke für den ganzen Fisch!