Vollständige Liste der MS-DOS-Befehle
2608
30/11/2021
Die PATH-Variable
Nachdem Sie dieses Dokument gelesen haben, sollten Sie wissen, was die PATH-Variable ist, wie sie eingestellt wird und wie Sie die Verzeichnisse anzeigen, die sich gerade darin befinden.
Motivation
Betrachten Sie die folgende UNIX-Terminalsitzung:
dbettis@rhino[~]$ ls...
Wenn Sie den Befehl eingeben
ls
, die Shell führt den Befehl pflichtbewusst aus und gibt Ihnen die Ergebnisse zurück. Im Laufe einer Terminalsitzung geben Sie weitere Befehle ein. Dazu gehören Dinge wie
Emacs
,
Firefox
, so weiter und sofort. Aber woher kommen diese Befehle? Offensichtlich sind sie bei der Installation des Betriebssystems wieder enthalten, aber wo sind sie?
Der UNIX-Befehl
was
wird Ihnen den vollständigen Pfad zu binary mitteilen, das ausgeführt werden soll. Zum Beispiel:
dbettis@rhino[~]$ was ls/bin/ls
Das bedeutet, dass die ausführbare Datei für den Befehl
ls
befindet sich in
/bin
. Alternativ zum Laufen
ls
, Sie können den vollständigen Pfad zum Befehl eingeben:
dbettis@rhino[~]$ /bin/ls...
Es scheint jedoch, als wäre hier ein bisschen Magie im Gange. Woher weiß das System das?
ls
ist drin
/bin
? Der Weg, den das System kennt, ist der
PFAD
Umgebungsvariable!
Umgebungsvariablen
Erstens, was ist eine Umgebungsvariable? Es ist eine Variable, die für die Dauer einer Terminalsitzung bestehen bleibt. Anwendungen, die in dieser Sitzung ausgeführt werden, greifen auf diese Variablen zu, wenn sie Informationen über den Benutzer benötigen. Führen Sie Folgendes aus, um eine Liste aller Umgebungsvariablen anzuzeigen:
dbettis@rhino[~]$ exportdeclare -x USER="dbettis"...
Der Name der Variablen ist
BENUTZER
und der Inhalt dieser Variablen ist
dbettis
. Eine andere Möglichkeit, den Inhalt einer Umgebungsvariablen anzuzeigen, besteht darin, Folgendes zu tun:
dbettis@rhino[~]$ echo $USERdbettis
Die Umgebungsvariable PATH
Die Umgebungsvariable PATH hat ein spezielles Format. Mal sehen, wie es aussieht:
dbettis@rhino[~]$ echo $PATH/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:.
Es ist im Wesentlichen ein
:
-separierte Liste von Verzeichnissen. Wenn Sie einen Befehl ausführen, wird die Shell
durchsucht jedes dieser Verzeichnisse nacheinander
, bis es ein Verzeichnis findet, in dem die ausführbare Datei existiert. Denken Sie daran, dass wir gefunden haben
ls
ein
/bin
, richtig?
/bin
ist das zweite Element in der PATH-Variablen. Entfernen wir also
/bin
von
PFAD
. Wir können dies tun, indem wir die verwenden
Ausstellung
rtBefehl:
< p>dbettis@rhino[~]$ export PATH=/usr/local/bin:/usr/bin:/sbin:/usr/sbin:.wie man den Pfad in Unix https://t.co/CUBY95j06G überprüft
– Rhonda Stevenson Mo. 17. Dez. 19:03:32 +0000 2018
Stellen Sie sicher, dass die Variable richtig gesetzt ist:
dbettis@rhino[~]$ echo $PATH/usr/local/bin:/usr/bin:/sbin:/usr/sbin:.
Nun, wenn wir versuchen zu rennen
ls
, die Shell weiß nicht mehr hineinzuschauen
/bin
!
dbettis@rhino[~]$ ls-bash: ls: Befehl nicht gefunden
Wie erwartet,
ls
kann nicht mehr gefunden werden. Lassen Sie uns hinzufügen
/bin
zurück zu
PFAD
, als
ls
ist eine sehr nützliche Sache.
dbettis@rhino[~]$ export PATH=/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:.
Hinzufügen zu PATH
Es gibt viele Situationen, in denen Sie ein Element anhängen möchten
PFAD
.Lassen Sie uns zuerst sehen, was der Strom ist
PFAD
ist:
dbettis@rhino[~]$ echo $PATH/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:.
Der Weg zu
hinzufügen
ein Verzeichnis ist wie folgt:
dbettis@rhino[~]$ export PATH=$PATH:/new/path
Dieser Befehl fügt hinzu
/neu/Pfad
an
PFAD
. Mal sehen, ob es aktualisiert wurde:
dbettis@rhino[~]$ echo $PATH/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:.:/new/path
Damit dies jedes Mal passiert, wenn Sie sich anmelden
Es gibt eine spezielle Datei in Ihrem Home-Verzeichnis namens
.bashrc
In UNIX ist es eine Konvention, dass Dateien mit beginnen
.
sind Konfigurationsdateien und sollten daher nicht sichtbar sein.
ls
listet nur Dateien auf, die mit a beginnen
.
wenn bestanden
-a
Flagge. z.B.
dbettis@rhino[~]$ ls -a
Auf jeden Fall enthält diese Datei (.bashrc) einfach eine Liste von Befehlen. Jeder dieser Befehle wird jedes Mal ausgeführt, wenn Sie eine Newshell erstellen.
dbettis@rhino[~]$ cat .bashrcexport PATH="$PATH:/p/firefox/bin"..
Jedes Mal, wenn eine Shell gestartet wird,
/p/firefox/bin
wird hinzugefügt
PFAD
. Wenn Sie möchten, dass bestimmte Verzeichnisse automatisch hinzugefügt werden
PFAD
, platzieren Sie diese Befehle einfach am Ende dieser Datei. Melden Sie sich ab und wieder an, um die Änderungen anzuzeigen. Alternativ können Sie den Inhalt dieser Datei in die aktuelle Sitzung laden:
dbettis@rhino[~]$ . .bashrc