Visualiza las programaciones de cron.
Los resultados tienen carácter informativo. Contrástalos con otras fuentes.
Se calcula en tu navegador. Nada de lo que introduces se envía a ningún sitio.
Leer una expresión cron
Una expresión cron son cinco campos separados por espacios, leídos de izquierda a derecha: minuto, hora, día del mes, mes y día de la semana. Casi todos los errores de cron son un campo en la posición equivocada o un malentendido sobre cómo interactúan los dos campos de día.
Cómo funciona
- Analiza los cinco campos, describe cada uno con palabras y enumera las próximas ejecuciones.
- Admite los operadores estándar: * para cualquier valor, */n para cada n, a-b para rangos y a,b,c para listas.
- Interpreta la expresión en el huso de tu navegador, que no es necesariamente el de tu servidor.
┌───────── minuto (0–59) │ ┌─────── hora (0–23) │ │ ┌───── día del mes (1–31) │ │ │ ┌─── mes (1–12) │ │ │ │ ┌─ día de la semana (0–6, domingo = 0) │ │ │ │ │ * * * * *
Ejemplo resuelto
Descodificar 30 2 * * 1-5, una programación que despista por los dos campos de día.
- minuto = 30
- hora = 2
- día del mes = * (todos los días)
- mes = * (todos los meses)
- día de la semana = 1-5 (de lunes a viernes)
Se ejecuta a las 02:30 cada día laborable. Fíjate en que el día del mes es * aquí: si hubiera un número concreto, cron se dispararía cuando coincidiera cualquiera de los dos campos de día, no ambos. Es la sorpresa más común de cron.
Cómo leer el resultado
- Cuando día del mes y día de la semana están ambos restringidos, cron usa O, no Y. 0 0 1 * 1 se ejecuta el día 1 del mes Y todos los lunes, no solo los lunes que caen en día 1.
- Cron usa el huso del servidor salvo configuración distinta, y la mayoría de crontabs gestiona mal el cambio de hora. Una tarea a las 02:30 puede ejecutarse dos veces o ninguna la noche del cambio.
- No existe un «cada 90 minutos». Los pasos dividen el campo, así que */90 en el campo de minutos no es válido; escríbelo como dos entradas o lleva la lógica del intervalo dentro de la tarea.
- Algunas implementaciones añaden un sexto campo de segundos al principio, y Quartz usa siete con el año. Confirma qué dialecto habla tu planificador antes de copiar una expresión de otro sitio.
Preguntas frecuentes
- ¿Por qué mi tarea se ejecuta más de lo previsto?
- Casi siempre por el comportamiento O entre día del mes y día de la semana, o por un paso aplicado al campo equivocado. Releer la expresión en palabras, como hace esta herramienta, detecta ambos casos enseguida.
- ¿Cómo programo algo el último día del mes?
- El cron estándar no puede expresarlo. Lo habitual es ejecutar a diario y que la tarea termine de inmediato si mañana no es día 1. Algunos dialectos añaden una letra L para esto.