Verwendung von relativen und absoluten Pfaden unter Linux

Verwendung von relativen und absoluten Pfaden unter Linux

01. Übersicht

Absolute und relative Pfade kommen in Shell-Umgebungen häufig vor und haben jeweils ihre eigenen Verwendungszwecke. Manchmal sind relative Pfade praktischer und manchmal sind absolute Pfade praktischer.

02. Absoluter Pfadname

Ein absoluter Pfad muss mit **/** beginnen

Der absolute Pfad zeigt auf den Speicherort der Datei/Files.

Wir können jederzeit den absoluten Pfad verwenden, um die gewünschte Datei zu finden

Beispiel

Beispiel 1:
/home/deng

Beispiel 2:
/usr/share/man

03. Relative Pfadnamen

Relative Pfade beginnen nicht mit **/**

Der relative Pfad ist relativ zum aktuellen Standort und zeigt zum Ziel.

Normalerweise ist ein relativer Pfad kürzer als ein absoluter Pfad und kann als Abkürzung zum schnellen Auffinden von Dateien/Dateien verwendet werden.

Beispiel 1:
../test/itcast

Beispiel 2:
./prüfen

04. Zweck relativer Pfade

Was ist also das Besondere an relativen und absoluten Pfaden? trinken! Das ist wirklich unglaublich! Angenommen, Sie haben eine Software geschrieben, die drei Verzeichnisse erfordert, nämlich etc, bin und man. Verschiedene Personen installieren die Software jedoch gerne in unterschiedlichen Verzeichnissen. Angenommen, Person A installiert die Software in /usr/local/packages/etc, /usr/local/packages/bin und /usr/local/packages/man, aber Person B installiert die Software gerne in /home/packages/etc, /home/packages/bin und /home/packages/man. Wenn absolute Pfade erforderlich sind, wäre das problematisch? Ja! Auf diese Weise ist es schwierig, die Inhalte in den einzelnen Verzeichnissen abzugleichen! Gerade jetzt ist die Angabe relativer Pfade besonders wichtig!

Wenn Sie außerdem wie ich sind und gerne lange Pfadnamen schreiben, damit Sie wissen, wofür das Verzeichnis ist, z. B.: das Verzeichnis /cluster/raid/output/taiwan2006/smoke, und ein anderes Verzeichnis ist /cluster/raid/output/taiwan2006/cctm, wie schreibe ich es dann bequemer, wenn ich vom ersten zum zweiten Verzeichnis wechseln möchte? Natürlich ist cd.../cctm bequemer! Rechts!

05. Zweck des absoluten Pfads

Was jedoch die Richtigkeit des Dateinamens betrifft, „ist die Genauigkeit des absoluten Pfads besser~“. Generell würde ich Ihnen empfehlen, beim Schreiben von Shell-Skripten zur Verwaltung Ihres Systems absolute Pfade zu verwenden. Wie sagt man es? Obwohl das Schreiben eines absoluten Pfads mühsamer ist, treten mit dieser Schreibmethode garantiert keine Probleme auf. Wenn Sie in Ihrem Programm relative Pfade verwenden, können aufgrund der unterschiedlichen Arbeitsumgebungen, in denen Sie es ausführen, einige Probleme auftreten.

06. Divergentes Denken

Frage: Wenn ein relativer Pfad angegeben ist, wie identifiziert das System den entsprechenden absoluten Pfad?

Tatsächlich basiert der relative Pfad auf der Umgebungsvariablen PATH, um den absoluten Pfad zu finden.

Beispielsweise befinde ich mich derzeit in /home/itcast, dem Home-Verzeichnis des itcast-Benutzers. Ich möchte die Daten der darin enthaltenen .bashrc-Datei mithilfe des Befehls more anzeigen, der sich in /bin/more befindet. Die übliche Befehlsschreibweise lautet:

[itcast@localhost ~]$ mehr .bashrc

Und da der Wert der Variable PATH lautet:

[deng@localhost ~]$ echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/deng/.local/bin:/home/deng/bin
[deng@localhost ~]$

Beim Ausführen des Befehls more sucht die Shell sequenziell nach dem Pfad der Variable PATH. Sobald eine Übereinstimmung gefunden wird (in diesem Fall sollte die Übereinstimmung /bin/more sein), wird /bin/more .bashrc ausgeführt. Dabei handelt es sich um den Vorgang, bei dem beim Ausführen eines Befehls der absolute Pfad vom relativen Pfad aus gesucht wird.

So können wir verstehen, warum das Format für die Ausführung des ausführbaren Programms im aktuellen Verzeichnis sein sollte:

[deng@localhost ~]$ ./test.sh

Anstatt test.sh direkt zu verwenden. Denn normalerweise enthält die PATH-Variable nicht den aktuellen Pfad. Wenn ./ nicht hinzugefügt wird, kann der Befehl im relativen Pfadformat den absoluten Pfad nicht finden.

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • So erhalten Sie den absoluten Pfad einer Datei über einen Dateideskriptor in Linux
  • Linux C++ Beispielcode zum Abrufen des absoluten Pfads einer Datei
  • So zeigen Sie den Pfad der MySQL-Konfigurationsdatei auf dem Linux-Server an
  • Linux C: Prozessnamen und Ausführungspfad des aktuellen Prozesses abrufen (Beispiel)
  • So fragen Sie den vollständigen Pfad der laufenden Datei in Linux ab
  • Probleme mit dem Ladepfad und Suchpfad der Dynamic Link Library unter Linux
  • Linux-Methode für schnelle Standort-Webpfade
  • So erhalten Sie den tatsächlichen Pfad des aktuellen Skripts in Linux
  • Ein Beispiel zum Abrufen des aktuellen Arbeitspfads unter Linux

<<:  Eine erfahrene Person zeigt Ihnen, wie Sie ein professionelles und standardisiertes MySQL-Startskript entwickeln

>>:  So verwenden Sie Anti-Shake und Throttling in Vue

Artikel empfehlen

Komprimierungs- und Optimierungsvorgänge für Docker-Images

Der Grund für die heutige Beliebtheit von Docker ...

Verwenden Sie „overflow: hidden“, um Seiten-Bildlaufleisten zu deaktivieren

Code kopieren Der Code lautet wie folgt: html { Ü...

Übersicht über MySQL-Statistiken

MySQL führt SQL durch den Prozess der SQL-Analyse...

Zusammenfassung der Blockelemente, Inline-Elemente und variablen Elemente

Blockelement p - Absatz Text vorformatieren Tisch ...

Grafisches Tutorial zur Installation und Konfiguration der MySQL-Version 5.7.15

Dieser Artikel enthält ein ausführliches Tutorial...

Zusammenfassung der Verwendung von Datetime und Timestamp in MySQL

Inhaltsverzeichnis 1. Wie wird die aktuelle Uhrze...

Die Popup-Maske der Frontend-Seite verhindert das Scrollen der Seite

Ein Problem, auf das Frontend-Entwickler häufig s...

Das Prinzip und die Implementierung des JS-Drag-Effekts

Die Drag-Funktion wird hauptsächlich verwendet, u...

CSS-Standard: Eigenschaft „vertical-align“

<br />Originaltext: http://www.mikkolee.com/...

MySQL-Join-Abfrage (Left Join, Right Join, Inner Join)

1. Allgemeine Verbindungen für MySQL INNER JOIN (...

Detaillierte Schritte zum Konfigurieren des Tomcat-Servers in IDEA 2020

Die Schritte zum Konfigurieren von Tomcat in IDEA...

Vue implementiert Video-Upload-Funktion

In diesem Artikelbeispiel wird der spezifische Co...