: artikel,

in der Gesamtansicht.
Zugehörige Kommentare,
Verweise und verwandte Artikel werden unten aufgeführt.

» Dieser Artikel wurde am
16. Dezember 2009
geschrieben und hat derzeit
2 Kommentare «

Große Dateien finden unter Linux

Da ich oft unter Platzmangel auf meiner Platte leide wollte ich mal alle “großen” Dateien finden und gegebenenfalls löschen.

Der Befehl

ls -lahS $(find / -type f -size +100000k)

findet alle Dateien die größer sind als 100MByte und listet sie der Größe nach auf.

Dabei sorgt der Befehl ls -lahS für das Auflisten der Dateien. Die Dateien werden mit l im langen Format ausgegeben.

Der Parameter a zeigt alle Dateien, auch die versteckten. Dank h erscheinen alle Größenangaben in gut lesbarem Format.
AdsSpy: 2 sites by this AdSense ID

Mit $ wird das Ergebnis des nachfolgenden Befehls als Parameter an ls übergeben. Sprich, es erscheinen nur Dateien, die größer sind als 100.000 Kilobyte.

Hinweis: Wenn Sie den Befehl nicht als root ausführen, werden Sie einige Male Permission denied zu lesen bekommen.

Der Artikel wurde am Mittwoch, den 16. Dezember 2009 geschrieben. Er ist abgelegt unter folgenden Kategorien: Debian. Sie können hier einen Trackback senden Trackback zum Artikel anlegen. Kommentieren Sie den Artikel und lassen Sie sich bei neuen Kommentaren Feed für Kommentare automatisch benachrichtigen.

Nachschlagen bei Wikipedia   Was ist ein Trackback? | RSS-Feed? | Social Tagging?

Kommentare (2)

Gravatar

1

Stefan Blechschmidt

schrieb am 16. Dezember 2009 um 11:07 Uhr:

Nicht schlecht der Befehl aber birgt noch einige Probleme.

Mit dem /proc/ Verzeichnis hat find seine Probleme hier ist eine Umleitung des Fehlerkanals sicher sinnvoll.

Wenn find Namen mit Leerzeichen findet übergibt er 2 Parameter an ls und dann kann ls nichts mehr damit anfangen. „No such file or directory“

Besser wäre es den in find eingebauten Prozess -exec zu verwenden. Zwar geht dann die Sortierung verloren, weil find für jeden Fund einen ls Prozess startet, aber diese kannst du dir dann mit sort wieder einbauen.

find / -type f -size +100000k -exec ls -lah {} \; 2>/dev/null | sort -r -k5

Und wenn man ehrlich ist braucht man die Ausgabe der Rechte und des Benutzers auch nicht. Also würde ich den Befehl am Ende so schreiben

find / -type f -size +100000k -exec ls -sah {} \; 2>/dev/null | sort -r -k1

Gruß stefan

Gravatar

2

Hammer Man

schrieb am 8. Juni 2010 um 13:11 Uhr:

du -sk * | sort -k 1n,1

so einfach ist das

Schreiben Sie einen Kommentar zum Artikel







(x) Pflichtfeld. Kommentare unangemessenen Inhalts werden moderiert. XHTML: Sie können diese sog. Tags zur Formatierung verwenden:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>