Le dimanche 3 juin 2007 15:10, Jacques L'helgoualc'h a écrit : > > avec ça : > > | #!/bin/sh > > | find /var/log/* -type f -mtime +30 -exec rm -i '{}' ';' > > Heu, l'option « -i » de rm est interactive...
:-) , oui mon copié coller de test était un peu violent ! > > > Puis dans /etc/cron.monthly : ln -s /root/shells/PurgeMensuelle.sh > > ... sans « .sh » ? yep > > La commande find est récursive par défaut, donc (sans répertoires cachés > dans /var/log/) « find /var/log/ ... » revient au même --- d'autant que > la majeure partie du développement de /var/log/* est formée de noms de > fichiers ordinaires. vieux réflexes .... > > On peut aussi lancer moins de processus qu'avec -exec : > > find /var/log/ -type f -name '*log*.gz' -mtime +31 -print0 | \ > xargs --0 rm -f je me méfie de cela, parfois cela peut déborder de la longueur maxi d'une chaine 'shell', bien que dans le cas particulier de /var/log, ça devrait passer > Par ailleurs, il est sans doute préférable de réduire le nombre des logs > en amont, cf. man logrotate : les exemples donnés, > > rotate 5 > weekly > > et > > rotate 2 > monthly > > devraient convenir à peu près. on y pense jamais ;-) car c'est trop évident .....