Sortierung von Dateien nach Größe mit "ls"
Der Befehl "ls" von Linux ermöglicht dir die Auflistung von Dateien und Verzeichnissen in einem bestimmten Verzeichnis. Er verfügt außerdem über eine Reihe von Optionen, mit denen du deine Ergebnisse nach verschiedenen Kriterien sortieren kannst, darunter auch nach Größe.
Verwendung der Größensortierungsoptionen
Um Dateien nach ihrer Größe zu sortieren, verwende die Option -S, gefolgt vom Sortiermodus:
- -S: Sortiert Dateien nach Größe.
- -Sr: Sortiert Dateien nach Größe (umgekehrt).
Mehrere Sortierkriterien festlegen
Du kannst auch mehrere Sortierkriterien angeben, um deine Ergebnisse genauer zu filtern. Beispielsweise kannst du Dateien zunächst nach Größe und dann nach Namen sortieren:
ls -S -r | sort -k1,1 -k2,2
Sortierreihenfolge ändern
Standardmäßig sortiert "ls" die Dateien in aufsteigender Reihenfolge. Um die Sortierreihenfolge umzukehren, verwende die Option -r:
ls -Sr
Anzeigen des Speicherplatzes für Dateien
Die Option -h fügt der Ausgabe eine benutzerfreundliche Darstellung des Speicherplatzes hinzu, sodass du leicht die Dateigrößen ablesen kannst:
ls -S -h
Optionen zur Größensortierung verwenden
Um Dateien nach Größe zu sortieren, kannst du die Option -S
verwenden. Diese Option sortiert Dateien in aufsteigender Reihenfolge nach ihrer Größe, wobei die kleinste Datei zuerst angezeigt wird. Möchtest du die Sortierung in absteigender Reihenfolge durchführen, kannst du die Option -r
verwenden, wodurch die größte Datei zuerst angezeigt wird.
Sortierung nach Dateigröße in Bytes
Die Option -S
sortiert Dateien standardmäßig nach ihrer Größe in Bytes. Dies kann jedoch für große Dateien unübersichtlich sein. Um die Dateigröße in anderen Einheiten anzuzeigen, kannst du die Optionen -h
(human-readable) oder --si
(internationales Einheitensystem) verwenden.
ls -Sr
Sortierung nach Dateigröße in Blöcken
Manchmal kann es nützlich sein, Dateien nach ihrer Größe in Blöcken zu sortieren. Dies kann insbesondere dann hilfreich sein, wenn du auf einem Dateisystem mit blockbasierter Zuweisung arbeitest. Um Dateien nach ihrer Größe in Blöcken zu sortieren, kannst du die Option -k
verwenden.
ls -Sk
Mehrere Sortierkriterien festlegen
Sortieren nach Größe und dann nach Name
Um Dateien zuerst nach Größe und dann nach Name zu sortieren, verwende das folgende Kommando:
ls -SR
Die Option -S
sortiert nach Größe, während die Option -R
nach Name sortiert. Die Sortierung erfolgt zuerst nach Größe und dann nach Name innerhalb jeder Größenkategorie.
Sortieren nach Größe und dann nach Datum zuletzt geändert
Zum Sortieren von Dateien zuerst nach Größe und dann nach Datum zuletzt geändert, verwende das folgende Kommando:
ls -St
Die Option -t
sortiert nach Datum zuletzt geändert. Die Sortierung erfolgt zuerst nach Größe und dann nach Datum zuletzt geändert innerhalb jeder Größenkategorie.
Sortieren nach Größe und dann nach mehreren anderen Kriterien
Du kannst mehrere Sortierkriterien angeben, indem du sie mit Kommas trennst. Beispielsweise kannst du das folgende Kommando verwenden, um Dateien zuerst nach Größe, dann nach Datum zuletzt geändert und dann nach Besitzer zu sortieren:
ls -Srtu
Die Option -u
sortiert nach Besitzer. Die Sortierung erfolgt zuerst nach Größe, dann nach Datum zuletzt geändert und dann nach Besitzer innerhalb jeder Kategorie.
Sortierreihenfolge ändern
Standardmäßig sortiert der Befehl ls
Dateien nach Größe in aufsteigender Reihenfolge, beginnend mit den kleinsten Dateien. Du kannst jedoch die Sortierreihenfolge umkehren und die Dateien in absteigender Reihenfolge sortieren, sodass die größten Dateien zuerst angezeigt werden.
Die Option -r
für umgekehrte Sortierung
Um die Sortierreihenfolge umzukehren, verwende die Option -r
. Diese Option wechselt die Sortierrichtung von aufsteigend zu absteigend.
ls -r
Kombination mit anderen Optionen
Du kannst die Option -r
mit anderen Sortieroptionen kombinieren, um die Sortierung weiter anzupassen. Beispielsweise kannst du die folgenden Befehle verwenden:
- Dateien nach Größe in absteigender Reihenfolge und dann nach Namen in aufsteigender Reihenfolge sortieren:
ls -r -S
- Dateien nach Größe in absteigender Reihenfolge und dann nach Zugriffszeit in aufsteigender Reihenfolge sortieren:
ls -r -t
Sortieren nach mehreren Kriterien
Wenn du Dateien nach mehreren Kriterien sortieren möchtest, kannst du die Option -sort
mit mehreren Argumenten verwenden. Jedes Argument gibt eines der Sortierkriterien an, wobei die Argumente in der Reihenfolge der gewünschten Sortierreihenfolge angegeben werden.
ls -sort=size:desc,name:asc
Dieser Befehl sortiert Dateien zuerst nach Größe in absteigender Reihenfolge und dann nach Namen in aufsteigender Reihenfolge.
Anzeigen des Speicherplatzes für Dateien
Neben der Sortierung von Dateien nach Größe kannst du mit dem ls
-Befehl auch den Speicherplatz anzeigen, den jede Datei belegt. Dies ist besonders nützlich, wenn du Speicherplatz freigeben oder große Dateien identifizieren möchtest.
Option -s
Die Option -s
weist ls
an, die Größe jeder Datei in Bytes auszugeben. Wenn du diese Option verwendest, wird eine Spalte mit der Größe der Datei vor dem Dateinamen angezeigt.
ls -s
Option -h
Die Option -h
kann in Kombination mit -s
verwendet werden, um die Größe der Datei in einem für Menschen lesbaren Format anzuzeigen. Beispielsweise wird die Größe als Kilobytes (K
), Megabytes (M
) oder Gigabytes (G
) angezeigt.
ls -sh
Option --giga
Die Option --giga
ist eine Alternative zu -h
, die die Größe der Datei in Gibibyte (GiB
) anzeigt. Dies ist besonders nützlich, wenn du mit sehr großen Dateien arbeitest.
ls --giga
Anzeigen des kumulativen Speicherplatzes
Mit der Option -l
kannst du ls
anweisen, zusätzliche Informationen über jede Datei anzuzeigen, einschließlich des kumulativen Speicherplatzes für alle Dateien im aktuellen Verzeichnis.
ls -l
Die angezeigte Spalte "Größe" gibt die kumulative Größe aller Dateien im aktuellen Verzeichnis an. Dies kann nützlich sein, um zu ermitteln, wie viel Speicherplatz von Dateien in einem bestimmten Verzeichnis belegt wird.
Beispiele
Hier sind einige Beispiele für die Verwendung der oben genannten Optionen:
- Um den Speicherplatz aller Dateien im aktuellen Verzeichnis in Bytes anzuzeigen, verwende:
ls -s
- Um den Speicherplatz aller Dateien im aktuellen Verzeichnis in einem für Menschen lesbaren Format anzuzeigen, verwende:
ls -sh
- Um den kumulativen Speicherplatz für alle Dateien im aktuellen Verzeichnis anzuzeigen, verwende:
ls -l
- Um den Speicherplatz aller Dateien im aktuellen Verzeichnis in Gibibyte anzuzeigen, verwende:
ls --giga
Dateien in verschiedene Größenkategorien sortieren
Möchtest du deine Dateien in übersichtliche Größenkategorien sortieren? Mit dem Befehl ls
kannst du genau das erreichen. Hier erfährst du, wie du vorgehen kannst:
Bestimme die Größenkategorien
Überlege dir zunächst, welche Größenkategorien du erstellen möchtest. Mögliche Kategorien könnten sein:
- Klein (< 1 MB)
- Mittel (1 MB – 10 MB)
- Groß (10 MB – 100 MB)
- Sehr groß (über 100 MB)
Verwende die Option -size
Nutze die Option -size
des ls
-Befehls, um Dateien nach ihrer Größe zu filtern. Beispielsweise kannst du mit folgendem Befehl alle Dateien auflisten, die kleiner als 1 MB sind:
ls -size -1M
Erstelle Unterverzeichnisse für jede Kategorie
Erstelle für jede Größenkategorie ein eigenes Unterverzeichnis. Du kannst dies mit dem Befehl mkdir
tun, wie folgt:
mkdir klein mittel groß sehr_groß
Verschiebe Dateien in die entsprechenden Unterverzeichnisse
Verwende die Befehle find
und mv
, um Dateien automatisch in die richtigen Unterverzeichnisse zu verschieben. Hier ist ein Beispiel:
find . -size -1M -exec mv {} klein \;
Dieser Befehl sucht nach allen Dateien, die kleiner als 1 MB sind, und verschiebt sie in das Unterverzeichnis klein
.
Vorteile der Größenkategorisierung
Die Sortierung von Dateien nach Größenkategorien bietet zahlreiche Vorteile:
- Bessere Übersichtlichkeit: Du kannst deine Dateien leicht nach Größe finden und verwalten.
- Platzersparnis: Durch das Verschieben großer Dateien in eigene Verzeichnisse kannst du Speicherplatz auf deinem Hauptverzeichnis freigeben.
- Effizientere Backups: Die Kategorisierung erleichtert das Sichern und Wiederherstellen von Dateien, da du dich auf bestimmte Größenkategorien konzentrieren kannst.
Sortierte Ausgabe in eine Datei umleiten
Du kannst die Ausgabe des Befehls ls
, die nach Größe sortiert ist, in eine Datei umleiten. Dies ist hilfreich, wenn du die sortierten Dateien später in einem anderen Programm oder Skript verwenden möchtest.
Verwendung des Operators >
Die grundlegende Syntax zur Umleitung der Ausgabe in eine Datei lautet:
ls [Optionen] | sort | > datei.txt
Beispielsweise kannst du die nach Größe sortierten Dateien im aktuellen Verzeichnis in die Datei files_by_size.txt
umleiten:
ls -l | sort -k5,nr | > files_by_size.txt
Verwendung von --output
Du kannst auch die Option --output
von sort
verwenden, um die sortierte Ausgabe direkt in eine Datei zu schreiben. Dies ist etwas effizienter als die Verwendung des Operators >
, da es die Ausgabe nicht durch die Pipeline leitet.
Syntax:
ls [Optionen] | sort [Optionen] --output=datei.txt
Beispielsweise:
ls -l | sort -k5,nr --output=files_by_size.txt
Beachte
- Stelle sicher, dass du den Befehl mit Administratorrechten ausführst, wenn du in systemweiten Verzeichnissen sortieren möchtest.
- Die umgeleitete Datei überschreibt vorhandenen Inhalt, wenn sie bereits existiert. Überlege daher, ob du die Datei anhängen oder überschreiben möchtest, bevor du den Befehl ausführst.
- Du kannst weitere Sortieroptionen verwenden, um die Ausgabe nach mehreren Kriterien oder in umgekehrter Reihenfolge zu sortieren.
Fortgeschrittene Sortieroptionen
Neben den grundlegenden Sortierfunktionen bietet der Befehl ls
noch weitere fortgeschrittene Optionen, mit denen du deine Sortierergebnisse noch präziser anpassen kannst.
Sortieren nach Dateityp
Mit der Option -F
kannst du Dateien nach ihrem Typ sortieren. Diese Option fügt ein Präfix zu jeder Datei hinzu, das ihren Typ angibt:
-
/
für Verzeichnisse -
*
für ausführbare Dateien -
@
für Symlinks
Beispiel:
ls -F
Ausgabe:
.bash_history/ Desktop/ Downloads/ Music/ Pictures/ Public/ Templates/ Videos/
Sortieren nach numerischen Werten
Manchmal möchtest du vielleicht Dateien nach numerischen Werten sortieren, wie z. B. nach der Dateigröße oder den Zugriffsrechten. Dazu kannst du die Option -n
verwenden. Diese Option behandelt die Eingaben als numerische Werte und sortiert sie entsprechend.
Beispiel:
ls -n
Ausgabe:
100.txt 101.txt 102.txt 103.txt 104.txt
Sortieren rekursiver Verzeichnisse
Mit der Option -R
kannst du Dateien in allen Unterverzeichnissen rekursiv sortieren. Diese Option durchsucht jedes Verzeichnis und sortiert die darin enthaltenen Dateien nach den angegebenen Kriterien.
Beispiel:
ls -R | sort
Sortieren nach mehreren Sortierkriterien
Du kannst den Befehl ls
verwenden, um Dateien nach mehreren Sortierkriterien zu sortieren. Um dies zu tun, musst du die Sortieroptionen in der gewünschten Reihenfolge angeben.
Beispiel:
ls -t -r
Diese Option sortiert Dateien zuerst nach Zeitstempel (mit -t
) und dann in umgekehrter Reihenfolge (mit -r
).
Sortieren nach aufsteigender/absteigender Reihenfolge
Standardmäßig sortiert der Befehl ls
Dateien in aufsteigender Reihenfolge. Um die Sortierreihenfolge umzukehren, kannst du die Option -r
verwenden.
Beispiel:
ls -r
Diese Option sortiert Dateien in absteigender Reihenfolge.