Suchen Sie in Unterverzeichnissen nach Dateien mit unterschiedlichen Namen (um sie mit mtime zu entfernen).

Suchen Sie in Unterverzeichnissen nach Dateien mit unterschiedlichen Namen (um sie mit mtime zu entfernen).

Ich habe eine Reihe von Client-Ordnern auf einem Server. Jeder Client hat Backups in einem „Backup“-Verzeichnis wie folgt:

~/backups/<CLIENT_NAME>/{daily, weekly, monthly}/{databases, directories, logs}

Ich möchte einen Weg finden, alle Clientordner zu durchsuchen und Dateien zu entfernen, die älter als ein bestimmter Zeitraum sind. Kann ich das tun, ohne findfür jeden Client eine Suche durchzuführen? Bisher muss ich findfür jeden Client drei durchführen, und es gibt Dutzende.

find ~/backups/<CLIENT_NAME>/daily/{directories,databases,logs} -mtime +6 -exec rm -rf {} \;
find ~/backups/<CLIENT_NAME>/weekly/{directories,databases,logs} -mtime +27 -exec rm -rf {} \;
find ~/backups/<CLIENT_NAME>/monthly/{directories,databases,logs} -mtime +31 -exec rm -rf {} \;

verwandte Informationen