Heim >System-Tutorial >LINUX >Was ist der Unterschied zwischen absoluten Pfaden und relativen Pfaden unter Linux?
Pfad ist ein sehr wichtiges Konzept im Linux-System und jeder Linux-Benutzer sollte es verstehen.
Es bezieht sich auf den Speicherort von Dateien und Verzeichnissen in der Linux-Verzeichnisstruktur, bestehend aus Namen und Schrägstrichen. Über Pfade können wir schnell den Speicherort von Dateien oder Verzeichnissen finden.
/home/abhishek/scripts
Als Systembenutzer werden Pfade verwendet, wenn Sie auf eine Datei oder ein Verzeichnis zugreifen möchten oder wenn Sie den Speicherort einer Datei oder eines Verzeichnisses für einen Befehl oder ein Skript angeben müssen.
cat /home/abhishek/scripts/my_script.sh
Denken Sie daran, dass, wenn der Pfad mit einem Schrägstrich „/“ beginnt, der erste Schrägstrich den Stamm darstellt und die übrigen Schrägstriche im Pfad nur Trennzeichen sind. Anfänger verwechseln oft den -Wurzel--Schrägstrich und den -Trennzeichen--Schrägstrich.
Im Bild oben beginnt der erste Pfad mit dem Stammpfad (/) und der zweite Pfad beginnt nicht mit /. Beide Schreibweisen sind korrekt, die erste ist ein absoluter Pfad und die zweite ist ein relativer Pfad.
Absolute Pfade beginnen immer im Stammverzeichnis (/), wie zum Beispiel:
/home/abhishek/scripts/my_scripts.sh
Relative Pfade beginnen im aktuellen Verzeichnis. Wenn Sie sich beispielsweise im Verzeichnis /home befinden und auf die Datei my_script.sh zugreifen möchten, sollte der Zugriffspfad wie folgt lauten:
abhishek/scripts/my_scripts.sh
Wir alle wissen, dass die Verzeichnisstruktur in Linux ein Baum ist, der beim Stammverzeichnis (/) beginnt und dann Zweige generiert.
Angenommen, wir befinden uns jetzt im Verzeichnis abhishek und möchten auf die Datei my_scripts.sh zugreifen, wie in der folgenden Abbildung mit den beiden Pfaden dargestellt:
Angenommen, wir verwenden den Befehl ls, um die Dateiinformationen von my_script.sh anzuzeigen, und verwenden dann den absoluten Pfad:
ls -l /home/abhishek/scripts/my_script.sh
Dann der relative Pfad:
ls -l scripts/my_script.sh
Dann sind die beiden oben genannten Methoden bis auf die unterschiedlichen Dateipfade genau gleich:
Hinweis: Unter Linux wird bei Dateinamen die Groß-/Kleinschreibung beachtet. Kann Groß- und Kleinbuchstaben, Zahlen, Punkte, Bindestriche, Unterstreichungen und die meisten Zeichen außer Schrägstrich (/) enthalten. Der Schrägstrich (/) ist ein reserviertes Zeichen, das für das Stammverzeichnis und zum Aufteilen von Verzeichnissen in einem Pfad verwendet wird.
Verwenden Sie relative Pfade mit . und .. Verzeichnissen
**
**
Es gibt zwei spezielle relative Pfade:
Wie unten gezeigt, müssen wir vom Abhishek-Verzeichnis zum Prakash-Verzeichnis wechseln.
Um das Verzeichnis zu wechseln, verwenden Sie den Befehl cd. Wenn Sie einen absoluten Pfad verwenden, können Sie Folgendes tun:
cd /home/prakash
Wenn Sie relative Pfade verwenden, müssen Sie spezielle relative Pfade verwenden. :
cd ../prakash
Warum .. verwenden? Da der relative Pfad im aktuellen Verzeichnis beginnt, müssen wir dem Befehl cd mitteilen, dass er eine Ebene nach oben gehen soll, um zum Verzeichnis /home und von dort in das Verzeichnis prakash zu gelangen.
Absolute Pfade beginnen immer mit / und sind unabhängig vom aktuellen Standort; relative Pfade hängen vom aktuellen Standort ab.
Ehrlich gesagt gibt es keine eindeutige Antwort auf diese Frage. Es kommt darauf an.
Wenn die Verzeichnishierarchie, in der Sie sich gerade befinden, relativ tief ist und Sie eine Ebene nach oben oder unten wechseln müssen, ist es einfacher, relative Pfade zu verwenden.
Vorausgesetzt, Sie befinden sich in
/home/username/programming/project/interface/src/header Verzeichnis und muss auf etwas im Verzeichnis /home/username/programming/project/interface/bin zugreifen. Wenn Sie einen relativen Pfad verwenden, müssen Sie nicht den ganzen langen Verzeichnisnamen eingeben. Verwenden Sie hier einfach .././bin.
Wenn Sie jedoch vom Verzeichnis /home/username/programming/project/interface/src/header aus auf etwas im Verzeichnis /usr/bin zugreifen möchten, verwenden Sie ../../../../.. /../usr/bin ist problematischer. In diesem Fall ist es bequemer, den absoluten Pfad zu verwenden.
Eine andere Situation ist die Verwendung von Pfaden in Skripten oder Programmen. Wenn der Speicherort sicher ist, verwenden Sie einen absoluten Pfad. Wenn Sie mehrere Ordner im Projekt haben und zwischen ihnen wechseln müssen, verwenden Sie hier einen relativen Pfad, da Sie nicht sicher sind, wo der Endbenutzer das Programm ablegen wird.
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen absoluten Pfaden und relativen Pfaden unter Linux?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!