Cómo leer una expresión cron
Una expresión cron clásica de Unix tiene cinco campos separados por espacios: minuto (0–59), hora (0–23), día del mes (1–31), mes (1–12) y día de la semana (0–6, donde 0 y 7 son domingo). Una tarea se ejecuta cuando la hora actual coincide con todos los campos. El asterisco significa «cualquier valor», así que * * * * * se ejecuta cada minuto.
Dentro de un campo puedes combinar valores: la coma crea una lista (1,15), el guion un rango (9-17) y la barra añade un paso (*/10 significa cada 10 unidades). La mayoría de implementaciones aceptan también nombres en inglés como JAN o MON.
Por qué importa el dialecto
No todos los planificadores hablan el mismo cron. Quartz y Spring añaden un campo de segundos al principio, AWS EventBridge añade un campo de año al final, y Quartz y AWS numeran los días de la semana desde 1 = domingo en lugar de 0. Además, Quartz y AWS exigen un signo de interrogación en el día del mes o en el día de la semana. CronExplain detecta el dialecto por la forma de la expresión y puedes cambiarlo cuando quieras.
Próximas ejecuciones y zonas horarias
La lista se calcula según la hora de reloj en la zona horaria que elijas y se muestra junto a tu hora local. El horario de verano se trata como en la mayoría de planificadores: una hora que se salta al adelantar los relojes no se ejecuta ese día, y una hora que se repite al atrasarlos se ejecuta una sola vez. GitHub Actions y las reglas de AWS EventBridge usan siempre UTC, así que la herramienta cambia a UTC con esos dialectos.
Crea una expresión de forma visual
Si prefieres hacer clic en lugar de escribir, usa el constructor visual: elige «cada», «cada N» o valores concretos para cada campo y copia el resultado. Los ajustes rápidos cubren las programaciones más habituales, desde cada cinco minutos hasta el primer día del mes, y cualquier resultado se puede compartir con un enlace que guarda la expresión en la URL.
Preguntas frecuentes
- ¿Qué significa */5 * * * *?
- Se ejecuta cada cinco minutos: en los minutos 0, 5, 10, etc. de cada hora, todos los días. El paso */5 empieza en el valor mínimo del campo (0) y suma 5 cada vez.
- ¿El domingo es 0 o 7 en cron?
- En crontab estándar, Kubernetes, GitHub Actions y Spring, tanto 0 como 7 son domingo. En Quartz y AWS EventBridge la semana va de 1 = domingo a 7 = sábado, por lo que 0 no es válido.
- ¿Qué pasa si defino a la vez el día del mes y el día de la semana?
- El cron estándar ejecuta la tarea cuando coincide cualquiera de los dos, así que 0 0 13 * 5 se ejecuta el día 13 y todos los viernes. Quartz y AWS no permiten ambos; por eso uno debe ser «?».
- ¿Qué zona horaria usa cron?
- Crontab usa la zona local del servidor, Kubernetes la del controlador salvo que se defina spec.timeZone, y GitHub Actions y las reglas de EventBridge usan UTC. Elige la zona en la herramienta para ver las horas exactas.
- ¿Se envía mi expresión a un servidor?
- No. El análisis, las descripciones y el cálculo de ejecuciones ocurren en tu navegador. Nada de lo que escribes sale de tu dispositivo.