Ich habe an ein paar Stellen gelesen, dass das eingestellt PATH
ist, /etc/profile
oder die .profile
Datei, die sich im Hauptverzeichnis befindet.
Sind dies die einzigen Orte, an denen der Pfad festgelegt ist? Ich möchte es besser verstehen.
In der /etc/profile
Datei heißt es wie im folgenden Kommentar "system-wide .profile file for the Bourne shell"
. Bedeutet das, dass Profildateien die Hauptkonfigurationsdateien für bash sind?
In dieser Datei wird die Variable überhaupt nicht PATH
angezeigt. In der .profile
Datei im Home-Verzeichnis steht diese Zeile:
PATH="$HOME/bin:$PATH"
Das wird PATH
durch das Aussehen zurückgesetzt, weil es den bereits gesetzten $PATH
String mit $HOME/bin:
rechts verkettet . Aber ob etc/profile
und woher ~/.profile
kommen die einzigen Dateien in dieser Codezeile, wenn sie nicht in definiert sind ?PATH
$PATH
/etc/profile
Kann jemand erfahren, bitte geben Sie eine breite und detaillierte Erklärung der PATH
Variablen? Vielen Dank!
quelle
/etc/bashrc
. Hiermit wird festgelegt, wie BASH gestartet wird, das alle anfänglichen Umgebungsvariablen enthalten soll. Auf meinem System wird von/etc/bashrc
gelesen,/etc/profile.d
aber es hört sich so an, als hätten Sie nur 3 Dateien in/etc/profile.d
der Distribution, sodass Ihre Distribution dies möglicherweise anders macht.So ergänzen Sie die anderen Antworten:
bash
wirdPATH
auf einen fest codierten Standardwert gesetzt, wenn dieser nicht in der Umgebung eingestellt ist. Auf einem Ubuntu Server 16.04.2-Computer erhalte ich:Mit dem folgenden
strings
Dienstprogramm können wir überprüfen, ob dieser Wert tatsächlich fest codiert ist und nicht aus der Umgebung oder einer Datei gelesen wird :Auf meinem Arch Linux-Computer erhalte ich jedoch ein anderes Ergebnis:
Es sieht also so aus, als wäre diese Standardeinstellung zum Zeitpunkt der
bash
Erstellung der Binärdatei ausgewählt, was vom verwendeten Betriebssystem / der verwendeten Distribution abhängt.quelle
Sachen, die ich nicht sehe:
.profile
usw. bei der Kontoerstellung kopiert werdenKen Thompson mag Sie überraschen: "Views on Linux" .
quelle