Holen Sie sich den absoluten Pfad in Bash
- So erhalten Sie den absoluten Pfad in Bash
- Das Stammverzeichnis einer Datei in Linux
-
Verwenden Sie den Befehl
readlink
, um den absoluten Pfad in Linux zu erhalten -
Verwenden Sie den Befehl
realpath
, um den absoluten Pfad in Linux zu erhalten -
Verwenden Sie den Befehl
find
, um den absoluten Pfad in Linux zu erhalten
In diesem Bash-Artikel lernen wir verschiedene Methoden kennen, um den absoluten Pfad in Linux zu erhalten. Wir werden auch einige verschiedene Linux-Befehle lernen, um den absoluten Pfad einer Datei zu erhalten.
Bevor wir beginnen, müssen wir die grundlegenden Konzepte von absoluten
und relativen
Pfaden im Linux-Betriebssystem verstehen.
So erhalten Sie den absoluten Pfad in Bash
Die Bausteine eines Betriebssystems sind Dateien und Ordner. Als Linux-Benutzer betreiben wir mehrere Datei- und Verzeichnisaktionen.
Das Finden des gesamten Pfads einer Datei ist ein solcher Prozess. Der vollständige Pfad einer Datei wird auch als absoluter oder kanonischer Pfad bezeichnet.
Eine Adresse, die zum Suchen einer Datei oder eines Ordners verwendet wird, wird als Pfad bezeichnet. Ein absoluter Pfad ist eine vollständige Adresse oder ein Ort, der es uns ermöglicht, die gewünschte Datei von jedem Ort abzurufen.
Währenddessen wird ein relativer Pfad zum aktiven Arbeitsverzeichnis eingerichtet.
Ein Pfad ist ein Verweis auf ein Verzeichnis oder eine Datei. Unter Linux gibt es zwei Arten von Pfaden: absolute und relative.
Das aktuelle Arbeitsverzeichnis bestimmt den relativen Pfad. Andererseits ist der absolute Pfad der vollständige Pfad zu einer Datei oder einem Verzeichnis.
Es gibt mehrere Methoden in Bash, um die vollständige Adresse eines Skripts zu erhalten. Wir können realpath
, readlink
verwenden oder sogar unser kleines benutzerdefiniertes Skript schreiben.
Die Verwendung einer relativen Adresse macht es sehr einfach, die gesamte Adresse zu erhalten.
Der gesamte Pfad wird explizit aus dem Stammverzeichnis bereitgestellt. Das /
ist eine einfache Methode, um zu wissen, was was ist.
Ein relativer Pfad beginnt nicht mit /.
(der Stammordner). Dieser Artikel erklärt, wie man den absoluten Pfad eines Skripts in Bash findet.
In diesem Artikel werden zahlreiche Methoden zum Ermitteln des gesamten Pfads einer Datei oder eines Ordners beschrieben.
Das Stammverzeichnis einer Datei in Linux
Das oberste Verzeichnis des Dateisystems ist Root Directory oder Absolute Directory in Linux. Das Root-Verzeichnis ist mit einem Schrägstrich /
gekennzeichnet.
Wir können den Speicherort einer beliebigen Datei oder eines Verzeichnisses im Dateisystem mit einem vollständigen Pfad beschreiben, der mit einem Schrägstrich /
beginnt.
Dieser vollständige Pfad wird als absoluter Pfad bezeichnet, was bedeutet, dass er jeden Schritt angibt, der von der Wurzel oder dem absoluten Anfang des Dateisystems aus unternommen werden muss.
Verwenden Sie den Befehl cd
Der Befehl cd
(change directory) im Linux-Betriebssystem wird verwendet, um das aktuelle Arbeitsverzeichnis zu ändern.
$ cd /tmp
Verwenden Sie den Befehl mkdir
Dann verwenden wir den Befehl mkdir
, gefolgt von dem Namen, den Sie dem neuen Verzeichnis geben möchten.
$ mkdir -p dir11/dir12/dir13/dir14/dir15
Verwenden Sie den touch
-Befehl, um ein Verzeichnis zu erstellen
Nach dem Erstellen eines neuen Verzeichnisses oder neuer Verzeichnisse verwenden wir den Befehl touch
zum Erstellen, Ändern oder Modifizieren unserer Dateien.
Beispielcode:
$ touch dir11/dir12/file12.txt
$ touch dir11/dir12/dir13/dir14/file14.txt
$ touch dir11/dir12/dir13/dir14/dir15/file15.txt
Die Ausgabe des Codes:
$ tree /tmp/dir11/
/tmp/dir11/
└── dir12
├── dir13
│ └── dir14
│ ├── dir15
│ │ └── file15.txt
│ └── file14.txt
└── file12.txt
Im obigen Beispiel haben wir 4 Verzeichnisse und 3 Dateien erstellt. Unser absolutes Verzeichnis ist dir11/dir12/dir13/dir14/dir15/file15.txt
.
Der relative Pfad einer Datei in Linux
Die absoluten Pfade sind leicht verständlich, können aber auch umständlich zu handhaben sein, insbesondere bei der Arbeit mit tief verschachtelten Verzeichnissen.
Hier ist der relative Pfad hilfreich. Wenn Sie sich den obigen Code ansehen, lautet unser relativer Verzeichnispfad außerdem dir13/file12.txt
.
Verwenden Sie den Befehl readlink
, um den absoluten Pfad in Linux zu erhalten
Mit dem Befehl readlink
kann die vollständige Adresse einer Datei ermittelt werden. readlink
wird oft verwendet, um den Pfad eines symbolischen Links oder einer kanonischen Datei zu erfassen.
readlink
kann aber auch den absoluten Pfad aus einem relativen Pfad berechnen. Sie müssen den readlink
in jedem Fall mit einem Flag versehen.
In solchen Fällen wird am häufigsten das Flag f
verwendet.
Der Befehl readlink
gibt eine Liste kanonischer Dateinamen zurück. Um den gesamten Pfad einer Datei zu finden, können wir das Argument -f
dieses Befehls verwenden.
Dies sind die Verzeichnisse, und in diesen Verzeichnissen befinden sich Dateien. Wir können den absoluten Pfad jeder benötigten Datei erhalten.
Beispielcode:
$ cd /tmp/dir11/dir12/dir13/dir14/dir15/
Wir schreiben den Dateinamen, von dem wir den Pfad erhalten möchten.
$ readlink -f file15.txt
Nachdem wir den readlink -f
mit dem Namen der Datei verwendet haben, haben wir den genauen Pfad der Datei, und hier ist er:
/tmp/dir1/dir2/dir3/dir4/dir5/file5.txt
Wie wir in der Ausgabe des Codes sehen können, erhalten wir den absoluten Pfad der gewünschten Datei.
Verwenden Sie den Befehl realpath
, um den absoluten Pfad in Linux zu erhalten
Alternativ können wir den Befehl realpath
verwenden, um den absoluten Pfad einer Datei unter Linux zu erhalten.
Beispielcode:
$ cd /tmp/dir11/dir12/dir13/dir14/
$ realpath file14.txt
Hier ist der Pfad der Datei file14.txt
.
/tmp/dir1/dir2/dir3/dir4/file4.txt
Wie wir sehen können, können wir mit dem Befehl realpath
den gewünschten absoluten Pfad einer Datei unter Linux erhalten.
Verwenden Sie den Befehl find
, um den absoluten Pfad in Linux zu erhalten
Wir können die Struktur oder Hierarchie eines Verzeichnisses mit dem Befehl find
finden. Unter Linux können wir den Befehl find
verwenden, um den absoluten Pfad oder Ort einer Datei auszugeben.
Wir werden den folgenden Code verwenden, um den absoluten Pfad der file14.txt
zu finden.
$ cd /tmp/dir11/
$ find $PWD -type f -name file14.txt
Und der absolute Pfad der Datei file14.txt
ist:
/tmp/dir11/dir12/dir13/dir14/file14.txt
Wie wir in der obigen Ausgabe des Codes sehen können, erhalten wir den absoluten Pfad der gewünschten Datei mit dem Befehl find
im Terminal.
Wir hoffen, dass Sie diesen Artikel hilfreich finden, um zu verstehen, wie Sie den absoluten Pfad einer beliebigen Datei im Linux-Betriebssystem erhalten.
My name is Abid Ullah, and I am a software engineer. I love writing articles on programming, and my favorite topics are Python, PHP, JavaScript, and Linux. I tend to provide solutions to people in programming problems through my articles. I believe that I can bring a lot to you with my skills, experience, and qualification in technical writing.
LinkedIn