Solución 1:
Estoy dando una respuesta alternativa aquí aunque Trevor tiene razón.
El cron @weekly
La palabra clave hace exactamente lo que mencionó. Sin embargo , la mayoría de las distribuciones usan run-parts
para ejecutar sus propios archivos crontab programados (cada hora, día, semana y mes) que no utilizan las palabras clave de cron.
Por ejemplo , Ubuntu tiene un /etc/cron.weekly
que contiene un archivo separado para cada cronjob.
Esto generalmente se define en /etc/crontab
La versión karmic 9.10 de Ubuntu tiene lo siguiente en /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 )
Entonces, el crontab semanal en Ubuntu se ejecuta a las 6:47 am del domingo
Nota:cuando busque páginas de manual para implementaciones de crontab, querrá usar man 5 crontab
en lugar de solo man crontab
. Este último solo le dará la sintaxis para el comando crontab. El primero le brinda detalles de implementación de crontab.
Solución 2:
@weekly es el equivalente a:0 0 * * 0
Así que se ejecutará a las 00:00 del domingo.