Ich möchte in der Linux bash via rm * sehr viele Dateien aus einem Verzeichnis löschen. Leider erhalte ich eine Fehlermdlung: “Argument list too long”.
$ rm *
$ Argument list too long
Mit folgenden Befehl habe ich mal die Anzahl der Dateien im Verzeichnis ausgegeben:
$ ls | wc -l
Ergebnis: Es sind 521.201 Dateien im Verzeichnis. Wie kann ich eine so große Anzahl von Dateien unter Linux (Ubuntu) löschen?
Das Problem lässt sich ziemlich einfach mit folgenden Befehl lösen:
for i in * ; do rm $i ; done
Damit werden alle Dateien im aktuellen Verzeichnis einzelnt in einer Schleife gelöscht. Der Befehl ist langsamer als rm * lässt aber zu, dass man sehr sehr viele Dateien löschen kann.