Wie füge ich ein Verzeichnis zum PATH hinzu?


Zur akzeptierten Antwort gehen


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


747





2009-07-22




Anzahl der Antworten: 17


Verwenden Sie ~ / .profile, um $ PATH festzulegen

Ein eingegebener Pfad .bash_profile wird nur in einer Bash-Anmeldeshell ( bash -l ) festgelegt. Wenn Sie Ihren Pfad .profile eingeben, steht er Ihrer gesamten Desktopsitzung zur Verfügung. Das bedeutet, dass selbst die Metacity es nutzen wird.

Zum Beispiel ~/.profile :

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

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

Hinweis:

bash Als Login-Shell wird nicht analysiert, .profile ob eine existiert .bash_profile oder nicht .bash_login . Von man bash :

Es sucht in dieser Reihenfolge nach ~ / .bash_profile, ~ / .bash_login und ~ / .profile und liest und führt Befehle von dem ersten aus, der vorhanden und lesbar ist.

In den folgenden Antworten finden Sie Informationen zu .pam_environment oder .bashrc interaktive Shells ohne Anmeldung. Sie können den Wert auch global für alle Benutzer festlegen, indem Sie ein Skript in die Sitzung von Display Manager einfügen /etc/profile.d/ oder dieses verwenden /etc/X11/Xsession.d/ , um die Sitzung von Display Manager zu beeinflussen.


464


2009-07-22

Bearbeiten Sie .bashrc in Ihrem Ausgangsverzeichnis und fügen Sie die folgende Zeile hinzu:

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

Sie müssen Ihre .bashrc oder Logout / Login-Adresse eingeben (oder das Terminal neu starten), damit die Änderungen wirksam werden. Um Ihre Quelle zu finden, geben Sie .bashrc einfach ein

 $ source ~/.bashrc
 

314


2009-07-22

Der empfohlene Ort, um permanente, systemweite Umgebungsvariablen zu definieren, die für alle Benutzer gelten, ist:

 /etc/environment
 

(Hier wird der Standard PATH definiert)

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

  • Drücken Sie zum Bearbeiten Alt+ F2und geben Sie Folgendes ein:

     gksudo gedit /etc/environment
     

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

Führen Sie den Befehl aus, um Änderungen vorzunehmen . /etc/environment . Da diese Datei nur ein einfaches Skript ist, wird sie ausgeführt und der PATH Umgebungsvariablen der neue Pfad zugewiesen . Um zu überprüfen, führen Sie env aus und überprüfen Sie den PATH Wert in der Liste.

Verbunden:


124


2012-07-31

Ich denke, der kanonische Weg in Ubuntu ist:

  • erstelle eine neue Datei unter /etc/profile.d/

     sudo vi /etc/profile.d/SCRIPT_NAME.sh
     
  • dort hinzufügen:

     export PATH="YOUR_PATH_WITHOUT_TRAILING_SLASH:$PATH"
     
  • und gib ihm Ausführungserlaubnis

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

59


2010-01-09

Für komplette Neulinge (wie ich), die sich mit GUI besser auskennen:

  1. Öffnen Sie Ihren $HOME Ordner.
  2. Gehen Sie zu AnsichtVersteckte Dateien anzeigen oder drücken Sie Ctrl+ H.
  3. Klicken .profile Sie mit der rechten Maustaste auf und dann 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 die Änderungen zu übernehmen (lassen Sie Ubuntu tatsächlich laden .profile ).

47


2011-10-24

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

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

Unter Bezugnahme auf die obige Dokumentation habe ich meine Android SDK-Pfadtools folgendermaßen eingerichtet :

  1. ~/.pam_environment Datei im Home-Verzeichnis erstellen .
  2. deren Inhalt ist PATH DEFAULT=${PATH}:~/android-sdk-linux/tools .
  3. Zusätzlicher benutzerdefinierter Benutzerpfad kann durch Trennen der Pfade mit Doppelpunkt (:) hinzugefügt werden .
  4. Dies erfordert eine erneute Anmeldung. Dies bedeutet, dass Sie sich abmelden und wieder bei der Desktop-Umgebung anmelden müssen.

46


2012-12-08

Fügen Sie diese Zeile in Ihre ~/.bashrc Datei ein.

Es wird bezogen, wenn Sie ein Terminal öffnen

EDIT : Basierend auf die Kommentare unten, für eine allgemeinere Einstellung, die für alle Schalen gilt (einschließlich wenn du getroffen werden Alt- F2in der Einheit), die Zeile in hinzufügen ~/.profile Datei. PATH Sollte jedoch wahrscheinlich nicht beides tun, da der Pfad Ihrer Umgebung zweimal hinzugefügt wird, wenn Sie ein Terminal öffnen.


26


2012-07-31

Fügen Sie die Zeile export PATH=/path/you're/adding:$PATH an das Ende von an, um sie systemweit festzulegen /etc/profile .

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


15


2009-07-22

Das Hinzufügen zu .bashrc wird funktionieren, aber ich denke, die traditionellere Methode zum Einrichten Ihrer Pfadvariablen befindet sich in .bash_profile, indem die folgenden Zeilen hinzugefügt werden.

 PATH=$PATH:/my/path/foo
export PATH
 

Laut diesem Thread sieht es so aus, als ob Ubuntus Verhalten sich geringfügig von dem von RedHat und Klonen unterscheidet.


14


2009-07-22

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 in diesem Blog hier zu exportieren .


10


2012-09-08

 sudo vi /etc/profile.d/SCRIPT_NAME.sh
 

dort hinzufügen

 export PATH=YOUR_PATH_WITHOUT_TRAILING_SLASH:$PATH
 

8


2011-01-13

Immer wenn ich meinen Ordner mit BASH-Skripten "installiere", befolge ich das Testmuster für einen $HOME/bin Ordner, der in den meisten .profile-Dateien der letzten Versionen von Ubuntu enthalten ist. Ich habe einen Test gemacht, der so aussieht

 if [ -d "/usr/scripts" ]; then
   PATH="/usr/scripts:$PATH"
fi
 

Es funktioniert in fast 100% der Fälle und ich kann es in einem GUI-Texteditor mit einem schnellen "Alle ersetzen" ändern, falls ich mich jemals dazu entscheide, /scripts näher an meinen $HOME Ordner heranzurücken. Ich habe dies in 6 Ubuntu-Installationen nicht getan, aber es gibt "immer morgen". S

BZT


6


2011-12-29

Die empfohlene Methode zum Bearbeiten von PATH ist aus der /etc/environment Datei

Beispielausgabe von /etc/environment :

 PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
 

Zum Beispiel, um den neuen Pfad von hinzuzufügen /home/username/mydir

 PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/username/mydir"
 

Starten Sie dann Ihren PC neu.


Systemweite Umgebungsvariablen

Eine geeignete Datei für Einstellungen von Umgebungsvariablen, die sich auf das gesamte System (und nicht nur auf einen bestimmten Benutzer) auswirken, ist / etc / environment. Eine Alternative besteht darin, eine Datei zu diesem Zweck im Verzeichnis /etc/profile.d zu erstellen.

/ etc / environment

Diese Datei ist speziell für systemweite Einstellungen von Umgebungsvariablen gedacht. Es ist keine Skriptdatei, sondern besteht aus Zuweisungsausdrücken, einer pro Zeile.

Hinweis: Die Variablenerweiterung funktioniert in / etc / environment nicht.

Weitere Informationen finden Sie hier: EnvironmentVariables


6


2016-11-08

Öffnen Sie Ihr Terminal, geben Sie gedit .profile Folgendes ein und fügen Sie es ein:

 # set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$PATH:$HOME/bin"
fi

 #the following line add Bin where you dont have a Bin folder on your $HOME
    PATH="$PATH:/home/mongo/Documents/mongodb-linux-i686-2.2.2/bin"
 

Terminal schließen und öffnen, es sollte funktionieren.


4


2013-02-04

Setzen Sie es auf Ihre ~/.bashrc oder eine Whatevershell, die Sie mit rc (oder einer der oben genannten ~/.profile ) verwenden, UND ~/.xsessionrc so funktioniert es auch in X ( Außenhülle ).


2


2012-08-01

Auch wenn Systemskripte dies nicht verwenden, sollte in allen Fällen, in denen ein Pfad (z. B. $HOME/bin ) zur Umgebungsvariablen PATH hinzugefügt werden soll, dieser verwendet werden

 PATH="${PATH:+${PATH}:}$HOME/bin"
 

zum Anhängen (anstelle von PATH="$PATH:$HOME/bin" ) und

 PATH="$HOME/bin${PATH:+:${PATH}}"
 

zum Voranstellen (statt PATH="$HOME/bin:$PATH" ).

Dies vermeidet den falschen Doppelpunkt vor / nach, wenn er $PATH anfänglich leer ist, was unerwünschte Auswirkungen haben kann.

Siehe z. B. https://unix.stackexchange.com/questions/162891/append-to-path-like-variable-with-creating-leading-colon-if-unset


1


2018-01-05

Für Ubuntu editiere die ~/.bashrc und füge die folgende Zeile hinzu.

. ~/.bash_profile

Bearbeiten Sie dann Ihr .bash_profil nach Bedarf .....


-1


2009-11-19