Calculadora de expresiones cron
Escribe una expresión cron estándar de 5 campos (el dialecto de cronie) y una fecha y hora de inicio, y mira cuándo se ejecuta la tarea la próxima vez.
Qué cron es este
Esta calculadora lee la expresión cron estándar de 5 campos que usa el crontab de Linux, y sigue el comportamiento de cronie. No es una calculadora para otros dialectos de cron. En particular, las expresiones de estilo Quartz (6 o 7 campos con segundos y años, y los caracteres ? L W #) son distintas y no se admiten. Planificadores como AWS EventBridge, Kubernetes CronJob y los temporizadores de systemd tienen su propia sintaxis o ajustes de zona horaria y tampoco se tratan.
| Campo | Intervalo | Cómo se escribe |
|---|---|---|
| Minuto | 0–59 | *, un número, 1,15 (una lista), 10-20 (un intervalo), */15 o 0-30/10 (pasos) |
| Hora | 0–23 | Igual |
| Día del mes | 1–31 | Igual |
| Mes | 1–12 | Igual. Los nombres (jan a dec, sin distinguir mayúsculas de minúsculas) también funcionan, en listas e intervalos |
| Día de la semana | 0–7 | Igual. Los nombres (sun a sat) también funcionan. 0 y 7 significan ambos domingo |
@@yearly(@@annually) =0 0 1 1 *,@@monthly=0 0 1 * *,@@weekly=0 0 * * 0,@@daily=0 0 * * *,@@hourly=0 * * * *. Esta calculadora también acepta@@midnightcomo@@daily.- Un intervalo de días de la semana que termina en 0 (
5-0) se lee como si terminara en 7 (viernes, sábado, domingo). - Cuando un paso es mayor que el intervalo (como
*/23en el campo de la hora), solo se usan el primer valor y los valores a los que llega el paso (*/23= horas 0 y 23).
Día del mes y día de la semana: OR y AND
La forma en que el campo del día del mes y el del día de la semana funcionan juntos la decide la implementación de cron (cronie).
- Si ninguno de los dos campos empieza por
*, la tarea se ejecuta los días que coinciden con cualquiera de ellos (OR).30 4 1,15 * 5se ejecuta a las 4:30 el 1 y el 15 de cada mes y todos los viernes. - Si alguno de los dos campos empieza por
*, la tarea se ejecuta los días que coinciden con ambos (AND). Un campo que empieza por*cuenta como «sin restricción». *y*/2se tratan igual, porque ambos empiezan por*. Solo difieren los valores expandidos (*/2son los días impares 1, 3, 5, etc.).0 0 */2 * 1= días impares AND lunes0 0 1-31/2 * 1= días impares OR lunes (1-31/2no empieza por*)
- El resultado muestra si se aplica OR o AND.
Hasta dónde busca
A partir de la fecha y hora que escribiste, la calculadora comprueba hasta 10 años por delante (pero sin pasar del 31 de diciembre de 2100), día a día. Una expresión que solo se ejecuta cada pocos años, como una para el 29 de febrero, se encuentra si se ejecuta en un plazo de 10 años. Si no se ejecuta nada en 10 años (por ejemplo, porque la fecha nunca existe), el resultado lo indica. La propia hora de inicio no se incluye (la búsqueda es de horas «posteriores»).
Sintaxis que no se admite
Si escribes una de estas, la calculadora explica por qué no puede leerla.
- Expresiones con 6 o 7 campos (un campo de segundos o de año, como en Quartz)
?,L,Wy#(sintaxis de Quartz)@@reboot(una tarea que se ejecuta una vez al arrancar, por lo que no tiene horas de ejecución)~(los valores aleatorios de cronie) yCRON_TZ(una zona horaria por crontab)- Un paso sobre un único valor inicial, como
5/15
Zonas horarias y horario de verano
La fecha y hora que escribes se usan tal cual, como año, mes, día, hora y minuto. No se calculan la conversión de zona horaria ni el horario de verano, así que el resultado puede diferir de lo que cron hace realmente en tu sistema. Según el manual de cronie (comprobado el 28 de octubre de 2026), las tareas en una hora que no existe por un cambio de horario de verano no se ejecutan, y las tareas en una hora que se produce dos veces se ejecutan dos veces. Otras implementaciones de cron lo tratan de otra manera.
Ejemplos
*/15 9-17 * * 1-5se ejecuta cada 15 minutos de 9:00 a 17:59 los días laborables0 9 * * 1se ejecuta a las 9:00 todos los lunes0 0 1 * *se ejecuta a las 0:00 el día 1 de cada mes (igual que@@monthly)0 0 * * 0y0 0 * * 7se ejecutan ambos a las 0:00 todos los domingos30 4 1,15 * 5se ejecuta a las 4:30 el 1 y el 15 y todos los viernes (OR)0 0 29 2 *se ejecuta a las 0:00 el 29 de febrero de los años bisiestos (el siguiente puede estar a años de distancia)0 0 31 2 *no se ejecuta nunca, porque el 31 de febrero no existe (no se encuentra nada en 10 años)
Fuentes y fecha de comprobación
La sintaxis y el comportamiento se comprobaron en el código fuente de cronie (entry.c y cron.c) y en el manual crontab(5) de cronie (cronie en GitHub) el 28 de octubre de 2026. Para esta página en español, también se abrió el 31 de octubre de 2026 la página de manual crontab(5) en man7.org, que es el manual de cronie. Enumera los cinco campos y sus intervalos, los nombres de los meses y de los días de la semana (las tres primeras letras, sin distinguir mayúsculas de minúsculas, utilizables en listas e intervalos), el comportamiento OR cuando ninguno de los campos de día contiene *, y los atajos @@reboot, @@yearly, @@annually, @@monthly, @@weekly, @@daily y @@hourly. Esa página de manual no enumera @@midnight y no describe el comportamiento AND; esos dos puntos proceden del código fuente de cronie. No se comprobaron las diferencias en otras implementaciones de cron.
Preguntas frecuentes
¿Qué pasa si fijo a la vez el día del mes y el día de la semana?
Si ninguno de los dos campos empieza por *, la tarea se ejecuta los días que coinciden con cualquiera de ellos (OR). Si alguno de los dos campos empieza por * (incluido */2), se ejecuta los días que coinciden con ambos (AND).
¿Qué diferencia hay entre 0 y 7 en el día de la semana?
Ninguna. Ambos significan domingo.
¿Puede el resultado diferir de lo que hace mi cron realmente?
Sí. Esta calculadora usa tal cual la fecha y hora que escribes y no calcula zonas horarias ni horario de verano. Las implementaciones de cron distintas de cronie también pueden comportarse de otra forma.
¿Por qué no aparece nada más allá de 10 años?
La búsqueda se detiene 10 años después de la fecha y hora de inicio. Una expresión para una fecha que no existe, como el 31 de febrero, no se ejecuta nunca.