Linux: In einem Ordner mit SEHR vielen Dateien alle löschen

Heute mal wieder neues zum Thema Tipps und Tricks für Linux. Ich habe auf einem meiner Server einen Ordner, der schnell ziemlich viele Dateien enthält. Wenn ich diesen Ordner leeren möchte, hilft ein rm -f * leider nicht, da Linux vor Ausführen des rm-Befehls den * auswertet und durch alle Dateinamen ersetzt. Hier wird der Befehl dann einfach zu lang!

Abhilfe schafft hier ein einfaches, in eine Zeile geschriebenes Skript, das man bequem verwenden kann. Aber Vorsicht! Das löscht im aktuellen Verzeichnis alle Dateien! Unterverzeichnisse werden übrigens nicht gelöscht.

for i in `/bin/ls -1U`; do echo $i; /bin/rm -f $i; done;

Wenn man nicht möchte, dass alle Dateinamen beim Löschen angezeigt werden, dann muss man das echo weglassen. Also:

for i in `/bin/ls -1U`; do /bin/rm -f $i; done;
Tags » , «

Autor:
Datum: Montag, 3. Januar 2011 13:34
Trackback: Trackback-URL Themengebiet: Linux

Feed zum Beitrag: RSS 2.0 Diesen Artikel kommentieren

2 Kommentare

  1. 1

    […] cd ~/archiv && find . -mtime +5 | xargs rm -rf )Das funktioniert dank xargs auch, wenn sehr viele Dateien zu löschen sind.find -newerWelche Dateien schreibt das Programm xyz? Welche Dateien werden […]

  2. 2

    […] funktioniert dank xargs auch, wenn sehr viele Dateien zu löschen […]

Kommentar abgeben

*