[SAGE-MUC] Löschen von vielen (!) Files

Armin Kunaschik armin.kunaschik at gmx.de
Mi Sep 24 23:55:27 CEST 2008


Moin, moin,

Michael Schwartzkopff wrote:
<snip>
> isch heraus, das das Löschen auch ein Problem ist. Es sind nämlich sehr viele 
> (> 100.000) Dateien im Verzeichnis.
> 
> Ein einfaches rm * scheidet also aus. In Internet wird die Lösung
> 
> find . -type -f | xargs -n100 rm -f
> 
Bei dieser Loesung muss ich mal wieder etwas "klugscheissen":
xargs "weiss" selber (auch unter Linux), wie lang eine Argumenten-
Liste sein darf und wieviel Argumente dem rm uebergeben werden duerfen.
Die oben beschriebene Loesung sollte sich also schon um einige
ein- bis zweistellige Prozentzahlen tunen lassen, wenn man einfach
das -n100 weglaesst.

Mehr Performance beim Loeschen gibt es ausserdem, wenn man "asynchron"
loeschen kann, also vorhandene Caching-Mechanismen maximiert.
Ob das unter Linux ueberhaupt, und wenn dynamisch funktioniert, kann
ich aber nicht sagen. Das Caching unter Linux funktioniert normalerweise
so gut, dass ich hier keine grossen Spruenge erwarten wuerde.

Das schnellste rm ist immer noch newfs, aber das kann man selten
sinnvoll fuer solche Zwecke verwenden :-)

Ciao,
Armin