Saltar al contenido
CronExplain

Expresión cron para ejecutar el último día del mes

Las tareas de cierre de mes, como cerrar la contabilidad o archivar datos, necesitan el último día de cada mes, tenga 28, 29, 30 o 31 días. Quartz, Spring y AWS lo expresan con L; el crontab estándar no puede, y lo habitual es ejecutar los días 28–31 y comprobar la fecha en el script.

La misma programación en cada dialecto

DialectoExpresión
crontab estándarNo representable: no admite L, W ni #.
6 campos (segundos)No representable: no admite L, W ni #.
Quartz0 0 0 L * ?
Spring0 0 0 L * *
AWS EventBridgecron(0 0 L * ? *)
GitHub ActionsNo representable: no admite L, W ni #.
Kubernetes CronJobNo representable: no admite L, W ni #.

Qué significa

Quartz: segundos primero, año opcional, 1 = domingo. Exactamente un campo de día debe ser «?». Admite L, W y #.

✓ Válida · Qué significa

A las 00:00, en el último día del mes

Ajustes rápidos

Próximas 10 ejecuciones

#En UTCTu hora local
1——
2——
3——
4——
5——
6——
7——
8——
9——
10——

La misma programación en otros dialectos

  • crontab estándarNo representable: no admite L, W ni #.
  • AWS EventBridgecron(0 0 L * ? *)Las reglas de EventBridge usan UTC.
  • Spring0 0 0 L * *

Constructor visual

Elige valores para cada campo. El constructor genera una expresión estándar de cinco campos que se convierte al dialecto seleccionado al usarla.

Minuto
Hora
Día del mes
Mes
Día de la semana
0 9 * * 1-5

Cómo funciona esta expresión

La expresión 0 0 0 L * ? está escrita en sintaxis Quartz. Léela campo a campo de izquierda a derecha: cada campo acota cuándo puede ejecutarse la tarea, y el planificador la lanza cuando la hora actual coincide con todos ellos. En lenguaje claro significa: A las 00:00, en el último día del mes.

Adáptala a tu planificador

Crontab, Kubernetes y GitHub Actions usan la forma de cinco campos. Quartz y Spring esperan un campo de segundos delante, y Quartz y AWS necesitan además «?» en uno de los dos campos de día; la tabla de arriba ya tiene en cuenta esas diferencias. Recuerda que GitHub Actions y las reglas de AWS EventBridge se ejecutan en UTC, mientras que crontab usa la zona del servidor, así que la misma expresión puede dispararse a horas locales distintas según dónde se ejecute.

Compruébala antes de desplegar

Pega tu expresión final en el explicador de arriba y elige la zona horaria de la máquina que la ejecutará. La lista de próximas ejecuciones muestra exactamente cuándo arrancará la tarea, también en torno a los cambios de horario, para detectar un error de una hora antes de que llegue a producción.

Preguntas frecuentes

¿Cuál es la expresión cron para ejecutar el último día del mes?
En crontab estándar es no expresable directamente (ver la tabla). En Quartz es 0 0 0 L * ? y en AWS EventBridge es cron(0 0 L * ? *).
¿En qué zona horaria se ejecutará?
Crontab usa la zona local del servidor, Kubernetes la del controlador o spec.timeZone, y GitHub Actions y las reglas de AWS EventBridge usan UTC.
¿Cómo puedo probar la programación?
Pégala en el explicador de esta página: muestra las próximas 10 ejecuciones en cualquier zona horaria junto a tu hora local.
¿Puedo modificarla un poco?
Sí. Edita la expresión en la herramienta o usa el constructor visual; la descripción y las ejecuciones se actualizan mientras escribes.