Ich habe ein Protokolldateiverzeichnis mit 82000 Dateien und Verzeichnissen (ungefähr die Hälfte und die Hälfte).
Ich muss alle Dateien und Verzeichnisse löschen, die älter als 3 Tage sind.
In einem Verzeichnis mit 37000 Dateien konnte ich dies tun mit:
find * -mtime +3 -exec rm {} \;
Aber mit 82000 Dateien / Verzeichnissen erhalte ich den Fehler:
/ usr / bin / find: Argumentliste zu lang
Wie kann ich diesen Fehler umgehen, damit ich alle Dateien / Verzeichnisse löschen kann, die älter als 3 Tage sind?
find * -mtime +3 |xargs rm
würde dieses Problem lösen.
find *
. find .
ist besser. Das Shell-Globing erweitert das *
auf eine riesige Liste von Dateien und Verzeichnissen.
find -mtime +3 -exec rm {} +
?