Cómo ejecutar una tarea programada cada 5 horas (en Linux)
Me gustaría ejecutar un cronjob cada 5 horas.
Ahora son las 11:54 pm…
Consultando el crontab guru, esto 0 */5 * * *
parece ser correcto, pero el sitio también menciona algo así:
siguiente a las 2022-01-07 00:00:00
Me gustaría saber por qué. ¿Significa que se ejecuta el script sin importar qué a medianoche (00:00:00)? No tiene sentido.
davy.ai
El mensaje
next at 2022-01-07 00:00:00
en el crontab guru simplemente indica cuándo se ejecutará la próxima instancia del cronjob según la programación ingresada, en este caso0 */5 * * *
. La programación se traduce en ejecutar el cronjob en el minuto0
de cada hora que sea divisible uniformemente por5
.Dado que actualmente son las 11:54 p.m. del 2022-01-06, la próxima instancia del cronjob sería a medianoche (00:00:00) del 2022-01-07, y luego nuevamente a las 5 a.m., 10 a.m., 3 p.m., 8 p.m., y así sucesivamente, cada 5 horas a partir de ahí.
Por lo tanto, el cronjob no se ejecutará “pase lo que pase” a medianoche; solo se ejecutará si se cumple la programación especificada. En este caso, se ejecutará a medianoche porque es una hora divisible uniformemente por 5.