Solution 1 :
Je donne une réponse alternative ici même si Trevor a raison.
Le cron @weekly
mot-clé fait exactement ce qu'il a mentionné. Cependant , la plupart des distributions utilisent run-parts
pour exécuter leurs propres fichiers crontab programmés (sur une base horaire, quotidienne, hebdomadaire et mensuelle) qui n'utilisent pas les mots-clés de cron.
Par exemple , Ubuntu a un /etc/cron.weekly
qui contient un fichier séparé pour chaque cronjob.
Ceci est généralement défini dans /etc/crontab
La version karmic 9.10 d'Ubuntu contient les éléments suivants dans /etc/crontab
17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
Ainsi, la crontab hebdomadaire dans Ubuntu est exécutée à 6h47 le dimanche
Remarque :lors de la recherche de pages de manuel pour les implémentations crontab, vous souhaitez utiliser man 5 crontab
au lieu de simplement man crontab
. Ce dernier ne vous donnera que la syntaxe de la commande crontab. Le premier vous donne des détails sur l'implémentation de crontab.
Solution 2 :
@weekly équivaut à :0 0 * * 0
Il fonctionnera donc à 00h00 le dimanche.