Bonjour,
Je suis débutant
Je cherche à executer une ligne de commande dans une table de cron.
J'ai différents répertoires "Histo" dans plusieurs répertoire avec les arborescence ci-dessous (j'éspère être assez clair):
1 2 3 4 5
| /data/appli/ftp/8/8452/Histo
/data/appli/ftp/8/1200/Histo
/data/appli/ftp/64/3/Histo
/data/appli/ftp/64/18/Histo
... |
Dans ces répertoires "Histo", j'ai plein de fichier archivés que je souhaiterai effacé lorsqu'il sont plus vieux de 7 jours, pour tester j'ai paramétré la ligne pour qu'elle s'execute toutes les 5mn et j'ai essayé de créer un log (/data/appli/log/cron.log) pour garder une trace de ce qui se passe
Pour cela j'ai édité la table avec la commande cron -e.
J'y ai ajouté la ligne suivante:
*/5 * * * * find /data/appli/ftp -type f -ctime +7 -wholename "*/Histo/*" -exec rm {} \+ > /data/appli/log/cron.log
Lorsque je regarde le fichier /var/log/syslog , j'ai l'impression que la commande est executé:
1 2
| Dec 21 11:05:01 toto12 CRON[10135]: (toto12) CMD (find /data/appli/ftp -type f -ctime +7 -wholename "*/Histo/*" -exec rm {} \+ > /data/appli/log/cron.log)
Dec 21 11:10:01 toto12 CRON[10249]: (toto12) CMD (find /data/appli/ftp -type f -ctime +7 -wholename "*/Histo/*" -exec rm {} \+ > /data/appli/log/cron.log) |
Par contre dans mes répertoire "Histo", les fichiers plus vieux que 7 jours sont toujours présents
Dans le fichier de log que j'ai créé "cron.log" , il n'y a rien (il est vide) , mais le fichier se créé
Si j'execute la commande , en ligne de commande
find /data/appli/ftp -type f -ctime +7 -wholename "*/Histo/*" -exec rm {} \+
Elle a l'air de fonctionner correctement
Elle me demande si je veux bien effacer les fichiers un par un , en répondant oui ou non.
Du coup , je n'arrive pas à voir ce qui cloche.
Merci d'avance pour votre aide
Partager