Linux-Befehle: Dateiliste
veröffentlicht am 16.04.2021 mit 361 Worten - Lesezeit: 2 Minute(n) in * LINUX *
Inhaltsverzeichnis
In einem älteren Beitrag ging es um den Speicherplatzverbrauch einzelner Verzeichnisse. Heute interessieren die Dateien, die sich in einzelnen Verzeichnissen “verstecken” …
Hierarchische Liste von Dateien auf einem Datenträger
Der Befehl ls
(list)
ist ein Standard-Unix/Linux-Befehl, der verwendet wird, um die Informationen über den Verzeichnis- oder Datenträgerinhalt zu ermitteln.
ls [OPTION]… [DATEI]…
Der Befehl ls
hat viele Parameteroptionen, mit denen die Ergebnisse in vielen Formaten abgerufen werden können. Der ls
-Befehl zeigt die Dateien und Verzeichnisse auch rekursiv an.
Die für unsere Zwecke hier benötigten Optionen sind:
-1
- zeigt eine Datei pro Zeile an-R
,--recursive
- Unterverzeichnisse rekursiv auflisten--group-directories-first
- Verzeichnisse vor Dateien gruppieren
$ ls -1 -R --group-directories-first
Wie üblich findet man die weiteren zur Verfügung stehenden Optionen mit dem Befehl man ls
.
Ein Beispiel
Als Startverzeichnis habe ich hier ~/Linux-Software/systemconfig
gewählt.
{benutzername}@{rechnername}:~/Linux-Software/systemconfig$ ls -1 -R --group-directories-first .: debian _etc_ImageMagick-6 41-nitrokey-eigene.rules 41-nitrokey_old.rules 41-nitrokey.rules 55-Argyll.rules 71-garmin.rules modemmanager.pref ./debian: preferences sources_debian-sid.list sources_debian-testing.list sources.list udisks2-mount.pkla ./_etc_ImageMagick-6: policy.xml {benutzername}@{rechnername}:~/Linux-Software/systemconfig$
Im ersten Block der Ausgabe erscheinen zuerst die Verzeichnisse (blau markiert), hier die beiden Unterverzeichnisse debian
und _etc_ImageMagick-6
. Dann folgen die Dateien, hier die in dieser Ebene liegenden .rules
-Dateien sowie eine weitere Datei modemmanager.pref
.
Im zweiten Block erscheinen alle Inhalte unterhalb des Unterverzeichnisses debian
- das sind nur Dateien.
Im dritten Block erscheint analog dazu der Inhalt des Unterverzeichnisses _etc_ImageMagick-6
- hier nur eine einzelne Datei.
Umleiten der Ausgabe in eine Datei
Je höher in der Verzeichnisstruktur man kommt, desto mehr Verzeichnisse und Unterverzeichnisse werden ausgegeben. Irgendwann macht es dann Sinn, das Ganze nicht mehr am Terminal-Fenster zu betrachten, sondern in eine Datei auszugeben:
$ ls -1 -R --group-directories-first > dateiliste.txt
Unterschiedliche Stände lassen sich dann mit Programmen wie z. B. Meld übersichtlich vergleichen.
Anzahl der Dateien in einem Verzeichnis
Noch eine kleine Ergänzung zum Befehl ls
: Die Option -1
liefert - wie oben gezeigt - einen Eintrag pro Zeile.
Wenn man diese Ausgabe jetzt als Eingabe in den Befehl wc
(word count) mit der Option -l
schickt, dann wird wc
Zeilen zählen und als Ergebnis die Anzahl der Einträge im Verzeichnis liefern. In obigem Beispiel ~/Linux-Software/systemconfig
wäre das:
$ ls -1 | wc -l
8
Also 8 Einträge (2 Verzeichnisse, 6 Einzeldateien).
weitere Artikel
- Festplattennutzung: Speicherplatzfresser finden mit 'du'
- Linux-Tipp: Rechner umbenennen - Hostname ändern
- WLAN-Scanner für Linux
- Warum ist Windows so 'fett'?
- Wetterprognosen - schnell und resourcenschonend