Le problème avec certaines des suggestions proposées est que si l'un des fichiers/répertoires contient des caractères spéciaux, il ne sera pas supprimé. Faire un -exec dans les lins des soumissionnaires prend beaucoup de temps et une meilleure efficacité est obtenue en passant les noms à xargs et en invoquant le rm/rmdir le moins de fois possible.
touch /media/Server/VPS/dailySQL/.saver
find /media/Server/VPS/dailySQL -type f -mtime +140 -print0 | xargs -0 rm -f >/dev/null 2>&1
find /media/Server/VPS/dailySQL -depth -type d -print0 | xargs -0 rmdir >/dev/null 2>&1
La deuxième ligne supprime tous les anciens fichiers. Je mets un fichier dans le répertoire de premier niveau pour le sauver de la destruction sur la première ligne et finalement vous parcourez les répertoires en profondeur d'abord et essayez simplement de rmdir. S'il y a encore quelque chose de présent, le rmdir échouera. La méthode "depth-first" est nécessaire pour supprimer les sous-répertoires vides avant de tenter de supprimer un répertoire donné.
Enfin, remarquez -print0 et le paramètre -0 sur xargs. Cela vous permet de traiter correctement les fichiers qui contiennent des espaces ou d'autres métacaractères. Cette fonctionnalité est disponible sur la plupart des systèmes Linux auxquels j'ai été exposé dernièrement.
C'est le type de script que j'ai utilisé pour supprimer les éléments de /tmp et /var/tmp.
Profitez de