CronDrive

Cron de lunes a viernes a las 8:00

0 8 * * 1-5

Cambia la zona horaria para ver cuándo corre en tu servidor.

Allá son las 19:58 (UTC+00:00).

¿Qué zona horaria elijo?

La zona horaria del servidor donde corre el crontab, que puede no ser la tuya. Para verla, ejecuta esto en el servidor:

timedatectl | grep "Time zone"

Si el crontab define CRON_TZ, elige esa.

A las 08:00 de lunes a viernes

0 minuto
8 hora
* día
* mes
1-5 día de la semana

Próximas ejecuciones (UTC)

  1. lun 19 oct, 08:00
  2. mar 20 oct, 08:00
  3. mié 21 oct, 08:00
  4. jue 22 oct, 08:00
  5. vie 23 oct, 08:00
  6. lun 26 oct, 08:00
  7. mar 27 oct, 08:00
  8. mié 28 oct, 08:00
  9. jue 29 oct, 08:00
  10. vie 30 oct, 08:00

Entérate cuando no corra

CronDrive te avisa por email, o en Slack, cuando un job con este horario falla, o no parte o no termina a tiempo. Gratis hasta 15 jobs.

Lo que verías con este horario

Un ejemplo con las últimas ejecuciones de este horario y resultados inventados: una falló y otra no corrió.

Horas en UTC.

Hora
jue 15 oct, 08:00 A tiempo Partió 08:00, terminó 08:13, duró 13 min.
mié 14 oct, 08:00 No corrió Alertas enviadas a las 08:05 y 08:30.
mar 13 oct, 08:00 A tiempo Partió 08:00, terminó 08:14, duró 14 min.
lun 12 oct, 08:00 Falló con código 1 Alerta enviada a las 08:04. Partió 08:00, terminó 08:04, duró 4 min.
vie 9 oct, 08:00 A tiempo Partió 08:00, terminó 08:13, duró 13 min.
jue 8 oct, 08:00 A tiempo Partió 08:00, terminó 08:14, duró 14 min.

La alerta de la ejecución que falló

Email de CronDrive, lun 12 oct, 08:04

Falló (código 1): "Tu job"

El job "Tu job" falló con el código de salida 1.

Si conectas Slack, el mismo mensaje llega a tu canal.

El cambio en tu crontab

0 8 * * 1-5 curl -fsS -m 10 https://job.crondrive.com/uG2Exw/start/$$; /path/to/job.sh; curl -fsS -m 10 https://job.crondrive.com/uG2Exw/end/$?/$$

Dos llamadas alrededor de tu comando, en la misma línea. La línea de tu job trae su propio token.

Monitorear este horario

Formato

Cron se maneja con un archivo crontab (tabla de cron), un archivo de configuración que indica qué comandos correr periódicamente y con qué horario. En Linux puedes ejecutar crontab -e para editarlo.

Cada línea tiene una expresión cron de cinco campos, seguida del comando a ejecutar. Un * significa todos los valores; 1,5 es una lista, 1-5 un rango y */5 un paso.

* minuto 0-59
* hora 0-23
* día 1-31
* mes 1-12
* día de la semana 0-6, el domingo es 0

Ejemplos

Expresión Descripción
* * * * * Cada minuto
*/5 * * * * Cada 5 minutos
*/10 * * * * Cada 10 minutos
*/15 * * * * Cada 15 minutos
*/30 * * * * Cada 30 minutos
0 * * * * Cada hora
0 */2 * * * Cada 2 horas
0 */6 * * * Cada 6 horas
0 */12 * * * Cada 12 horas
0 0 * * * Todos los días a las 00:00
0 8 * * 1-5 A las 08:00 de lunes a viernes
0 0 * * 1 A las 00:00 los lunes
0 0 * * 0 A las 00:00 los domingos
0 0 1 * * A las 00:00 el día 1 de cada mes
0 */8 * * * Cada 8 horas
1,5 * * * * En los minutos 1 y 5 de cada hora
1-5 * * * * En los minutos 1 a 5 de cada hora
0 2 * * * Todos los días a las 02:00
0 1 * * 1,2 A las 01:00 los lunes y los martes
30 9-17 * * 1-5 Cada hora de 09:30 a 17:30 de lunes a viernes
0 0 */5 * * A las 00:00 cada 5 días