Ich denke der folgende Befehl sollte das Problem lösen:
find . -ctime +90 -print -exec rm {} \; > log.txt
Wobei . für das aktuelle Verzeichnis und ctime für den Zeitpunkt der letzten Änderung des Dateistatus steht (es gibt noch mtime für den Zeitpunkt der letzten Änderung des Dateiinhalts und atime für den Zeitpunkt des letzten Zugriffs ).
Das + steht für 'älter als' und die Angabe danach sind Tage (minutengenau geht es mit cmin und analog dazu amin und mmin). Umgekehrt geht es natürlich auch (neuer als 3 Tage = -ctime -3 usw. ).
Die print-Option gibt noch den Dateinamen der betroffenen Datei aus (für das Loggin in die Datei log.txt per Pipe >).
Das exec führt einen Befehl aus, in dem Fall rm, wobei {} durch den aktuellen Dateinamen ersetzt wird. Abgeschlossen wird der exec-Teil mit einem Semikolon mit einem \ davor.
|