Explicador de expresiones cron

Lee una expresión cron en palabras y mira sus próximas 10 ejecuciones.

Cinco campos: minuto, hora, día del mes, mes y día de la semana. Un sexto campo al principio añade los segundos.

Horarios habituales
En palabras

A las 09:00, de lunes a viernes

Campo por campo
CampoValorSignificado
minuto00
hora909:00
día del mes*cada día
mes*cada mes
día de la semana1-5de lunes a viernes

Próximas 10 ejecuciones

Calculando las próximas ejecuciones…

Horario de verano: una hora que no existe (la que se salta) se omite; una hora que ocurre dos veces se ejecuta una sola vez, la primera.

Qué hace esta herramienta

Una expresión cron es una forma compacta de escribir un horario: */5 * * * * significa "cada 5 minutos" y 0 9 * * 1-5 "a las 9:00 los días laborables". Se usa en el crontab de Linux, en sistemas de CI, en planificadores de contenedores y en muchas bibliotecas, y es fácil equivocarse con matices. Esta herramienta lee la expresión como lo hace un planificador, la explica en tu idioma, la desglosa campo por campo y muestra las próximas 10 ejecuciones en la zona horaria que elijas. La expresión no sale de tu navegador.

Los campos

Son cinco, separados por espacios: minuto (0-59), hora (0-23), día del mes (1-31), mes (1-12 o JAN-DEC) y día de la semana (0-7, donde 0 y 7 son domingo, o SUN-SAT). Si añades un campo al principio, ese es el de los segundos, como en Spring y Quartz. Cada campo acepta * para todos los valores, un número, listas como 1,15, rangos como 9-17 y pasos como */15 (cada 15 unidades) o 10-30/5. Los atajos @hourly, @daily, @weekly, @monthly y @yearly también se entienden.

Ejemplos

  • */5 * * * *: cada 5 minutos.
  • 0 9 * * 1-5: a las 09:00 de lunes a viernes. Visto desde Ho Chi Minh el martes 13 de octubre de 2026 por la mañana, las siguientes ejecuciones son a las 09:00 del 13, 14, 15 y 16 y el lunes 19 de octubre.
  • */10 * * * * *: tiene seis campos, así que el primero son los segundos: cada 10 segundos.
  • */7 * * * * no es "cada 7 minutos": los minutos son 0, 7, 14... hasta 56 y luego otra vez 0, así que hay un hueco de 4 minutos al comienzo de cada hora.

Día del mes y día de la semana

Cuando ambos campos están definidos, el cron clásico ejecuta la tarea si uno cualquiera coincide, no los dos. Por eso 0 0 13 * 5 no significa "viernes 13": se ejecuta todos los días 13 y todos los viernes. En octubre de 2026 salta los días 2, 9, 13, 16, 23 y 30. Si uno de los dos campos empieza por *, solo cuenta el otro.

Zonas horarias y horario de verano

Una expresión cron no lleva zona horaria: el planificador usa la de la máquina o la del servicio. Elige la que corresponda. Cuando el reloj se adelanta, la hora saltada no existe y una tarea fijada a las 02:30 se omite ese día; cuando se atrasa, una hora como la 01:30 ocurre dos veces y la tarea se ejecuta una sola vez, la primera. Los planificadores reales pueden diferir en estos casos.

Lo que no se admite

Los caracteres ?, L, W, # y el campo de año son de Quartz y Spring, no del cron clásico. La herramienta lo indica en lugar de adivinar; reescribe la expresión con campos normales.

Para revisar patrones de líneas en un registro usa el probador de regex, y para comparar dos versiones de un crontab el comparador de textos.

Preguntas frecuentes

¿Admite segundos?

Sí. Con seis campos el primero se lee como segundos, como en Spring y Quartz. Con cinco es la forma clásica que empieza por los minutos.

¿Por qué mi expresión con día del mes y día de la semana se ejecuta tanto?

Porque el cron clásico ejecuta la tarea si coincide uno de los dos campos. `0 0 13 * 5` se ejecuta todos los días 13 y todos los viernes. Pon un asterisco en uno para exigir solo el otro.

¿Puedo usar ?, L, W o #?

No en esta herramienta. Son extensiones de Quartz y Spring. Te indica el carácter que la detuvo para que reescribas la expresión con campos normales.

¿Se envía la expresión a algún sitio?

No. Se analiza en tu navegador y las ejecuciones se calculan allí con los datos de zonas horarias que ya tiene.