Hallo Christian,
Weil ich gesehen habe, dass Du gerade in der LUGBZ-List gepostet
hast, meine Frage an Dich! (übrigens, danke für den Link)
Sobald du eine Lösung hast, bitte auf die ML ein Resume posten, sodass
wir alle mitlernen!
Kennst Du einen Befehl, mit dem ich alle Dateien in einem
Verzeichnis löschen kannst, die älter als z.B. 1 Monat sind?
(Kann Linux das?)
Natürlich funktionierts
Ich bin zwar nicht so ein Fan von find, aber um dieses Problem zu lösen,
kommt uns das Tool sehr entgegen.
Mittels find findest du die Dateien, laut den Kriterien (z.B.
Änderungszeit) und gibst diese dem rm Kommando einfach weiter. So ungefähr:
$ find . -mtime +50 | xargs rm -v
Das find liefert alle Dateien die vor 50 oder mehr (+) Tagen verändert
wurden und gibt sie mittels einer Pipe (|) dem Befehl xargs, welcher als
Parameter den auszuführenden Befehl rm und dessen Optionen erhält.
Man könnte auch ohne xargs arbeiten, riskiert aber bei viele Dateien,
dass die maximale Länge der Parameter für rm überschritten wird.
Wenn du die Dateien willst, die innerhalb den letzten 50 Tagen verändert
wurden, dann brauchst du nur -50 benutzen und falls du genau den Tag vor
50 Tagen willst, einfach 50. Es gibt neben mtime (modification time)
auch ctime (creation time) und vieles mehr. Aber das ist ja alles unter
'man find' beschrieben.
Happy hacking!
Patrick
p.s. Ich schicke eine Kopie an die Liste, da es auch andere
interessieren könnte!