Am Mittwoch, 17. September 2003 08:21 schrieb Mike Unke:
Hallo Liste,
per Cron-Job möchte ich aus einem bestimmten Verzeichnis (inkl. allen Unterverzeichnissen) alle Dateien löschen, die älter als 30 Tage sind. Dieser Vorgang soll per Cron-Job angestoßen werden.
Zum Suchen der Dateien verwende ich find mit der Option -mtime 30. rm sollte nun die Dateien löschen. Eine normale Pipe | ist leider hierfür nicht geeignet.
Vielleicht ist das folgende das, was du möchtest: Erstelle folgendes Script 'loeschen.sh': #!/bin/bash for ALTEDATEI in "$@"; do rm -R "$ALTEDATEI" done und rufe das Script (vorher Rechte aufs Ausführen setzen) folgendermaßen auf: /pfad/zum/script/loeschen.sh `find /pfad/zum/bestimmenverzeichnis -mtime 30` Probier das aber vorher anstatt des rm Befehls ersteinmal mit einem cp Befehl aus: cp -a "$ALTEDATEI" "$ALTEDATEI".`date +%F-%T`; damit nicht versehentlich falsche Dateien gelöscht werden - für irgendwelche Datenverluste übernehme ich keine Verantwortung ;-) Viele Grüße Dieter