Wie liste ich in Linux Dateien mit vollständigen Pfaden auf?

Wie liste ich in Linux Dateien mit vollständigen Pfaden auf?

Gibt es unter Linux ein Äquivalent dazu, Dir /s /a /bwo der vollständige Pfad und Dateiname aufgelistet werden? Ich bin neu bei Linux und möchte mir ohne GUI einen Überblick über die Struktur der Daten auf der Festplatte verschaffen.

Antwort1

Verwenden Sie den findBefehl. Standardmäßig listet er rekursiv alle Dateien und Ordner auf, die aus Ihrem aktuellen Verzeichnis stammen, mit dem vollständigen (relativen) Pfad.

Wenn Sie den vollständigen Pfad wünschen, verwenden Sie:

find "$PWD"

Wenn Sie den relativen Pfad wünschen, verwenden Sie:

find .

Hier $PWDist eine Variable, die das aktuelle Arbeitsverzeichnis enthält.

Einige Optionen:

  • Wenn Sie es nur auf Dateien oder Ordner beschränken möchten, verwenden Sie find "$PWD" -type fbzw. find -type d.
  • Wenn Sie möchten, dass es bei einer bestimmten Verzeichnistiefe anhält, verwenden Sie find "$PWD" -maxdepth 2beispielsweise .

LesenSuchen nach Dateienfür ein ausführliches Handbuch zu GNU find, dem Standard unter Linux.

Antwort2

Ich hatte heute dieselbe Frage. Ich habe einen Befehl namens „realpath“ gefunden. Hier ist ein Beispiel:

$ realpath ~/.bashrc
/home/harleygolfguy/.bashrc

Antwort3

Linux-Lösung:

$ pwd
/home/victoria

$ find $(pwd) -maxdepth 1 -type f -not -path '*/\.*' | sort
/home/victoria/new
/home/victoria/new1
/home/victoria/new2
/home/victoria/new3
/home/victoria/new3.md
/home/victoria/new.md
/home/victoria/package.json
/home/victoria/Untitled Document 1
/home/victoria/Untitled Document 2

$ find . -maxdepth 1 -type f -not -path '*/\.*' | sed 's/^\.\///g' | sort
new
new1
new2
new3
new3.md
new.md
package.json
Untitled Document 1
Untitled Document 2

Anmerkungen:

  • .: aktueller Ordner
  • entfernen -maxdepth 1, um rekursiv zu suchen
  • -type f: Dateien finden, keine Verzeichnisse ( d)
  • -not -path '*/\.*': nicht zurückkehren.hidden_files
  • sed 's/^\.\///g': Entferne das vorangestellte ./aus der Ergebnisliste

Antwort4

Der Vollständigkeit halber sei erwähnt, dass der ls -lR /Befehl den Namen jeder Datei, den Dateityp, die Dateimodusbits, die Anzahl der Hardlinks, den Besitzernamen, den Gruppennamen, die Größe und den Zeitstempel jeder Datei (für die Sie Zugriffsberechtigung haben) vom Stammverzeichnis abwärts auflistet. ( lsteht für lange Listen, d. h. alle diese Informationen Rmüssen rekursiv durch die Verzeichnisse durchsucht werden und /beginnen beim Stammverzeichnis des Dateisystems.)

Es gibt eine Reihe von Parametern, um die Ausgabeinformationen näher an zu bringen dir /S /A, aber ich muss zugeben, dass ich nicht herausfinden kann, wie ich das übersetzen soll /B.

Für nützliche Informationen würde ich Folgendes versuchen: ls -lAFGR --si /

Wo

  • l = lange Liste (wie oben erwähnt)
  • A = fast alle Dateien (schließt nicht . und .. in jedem Verzeichnis ein, zeigt aber alle versteckten Dateien an)
  • F = Dateiindikator anzeigen (einer *für EXE-Dateien, /für Verzeichnisse, @für symbolische Links, |für FIFOs, =für Sockets und >für Türen)
  • G = Gruppeninformationen nicht anzeigen (entfernen Sie dies, wenn Sie sie sehen möchten)
  • R = Verzeichnisse (Unterverzeichnisse) rekursiv auflisten und
  • --si = zeigt die Dateigröße in menschenlesbarer Form an, z. B. im 1M-Format (wobei 1M = 1000B)

lskann eine leichter lesbare Übersicht über Verzeichnisse und Dateien in diesen Verzeichnissen bieten, da finddie Ausgabe von schwierig zu scannen sein kann, wenn Dateien in sehr langen Verzeichnisstrukturen enthalten sind (über mehrere Zeilen). Die Folge ist, dass jede Datei einzeln aufgelistet wird (d. h. ohne Verzeichnispfadinformationen) und Sie möglicherweise einige Seiten/Bildschirme zurückblättern müssen, um die Verzeichnisse zu finden, in denen sich eine bestimmte Datei befindet.

Außerdem enthält find nicht die /A-Informationen im DIR-Befehl. Ich habe in dem gezeigten Befehl eine Reihe von Attributen vorgeschlagen (die zufälligerweise den zusätzlichen Nutzen zeigen, den Linux gegenüber einem bestimmten proprietären System bietet), aber wenn Sie die Seiten manund lesen , werden Sie sehen, was Sie einschließen sollten und was nicht.infols

verwandte Informationen