Unter Linux eine Liste der größten Dateien ausgeben

Folgende Problemstellung: Es soll unter Linux eine nach Dateigröße sortierte Liste von Dateien ermittelt werden, die eine bestimmte Größe überschreiten.

find /srv -type f -size +50000k

Mit dem Find-Befehl wird eine Liste aller Dateien im Verzeichnis /srv und den darin enthaltenen Unterverzeichnissen ermittelt, die größer als 50000 Kb sind. Das Ergebnis ist noch nicht ganz zufriedenstellend, da nur die Dateien ausgegeben werden, nicht aber ihre Größe. Ebenfalls sind die Dateien noch nicht sortiert. Dies lässt sich erreichen, indem man das Ergebnis des Find-Befehls mithilfe des Befehls xargs mit dem ls Befehl kombiniert.

find /srv -type f -size +50000k| xargs ls -lahS

Jetzt erhält man die gewünschte Liste mit den Dateien im Verzeichnis /srv, die größer als 50000Kb sind – sortiert nach der Dateigröße.

Kommentare

7 Antworten zu „Unter Linux eine Liste der größten Dateien ausgeben“

  1. […] nicht wie oben beschrieben verwendet werden.LinksDatei- und Verzeichnissuche mit find und locateUnter Linux eine Liste der größten Dateien ausgebenTags: Linux, Red Hat, SuSE, Ubuntu, Windows« Hotkeys für Citrix, Remotekonsole und (Ultra-) […]

  2. […] Unter Linux eine Liste der größten Dateien ausgeben […]

  3. Avatar von BigBen
    BigBen

    Hallo,

    vielen Dank für die find-Befehle. Der Befehl

    find /srv -type f -size +50000k| xargs ls -lahS

    funktioniert nur solange kein Leerzeichen im Dateinamen bzw. Pfad vorhanden ist. Andernfalls meldet der nachfolgende List-Befehl, dass dieser einige Dateien nicht finden kann.

    VG, BigBen

  4. Avatar von iwi900kp
    iwi900kp

    Versuche mal den xargs-Anteil mit “ | xargs -I{} ls -lahS {}“ zu ersetzen.

  5. Avatar von Thomas
    Thomas

    Oder du nimmst einfach „du -h * | sort -hr“

  6. […] Eine Ergänzung zu dem Artikel “Unter Linux eine Liste der größten Dateien ausgeben” […]

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert