¿Odias los anuncios? Ir Sin publicidad Hoy

Generador de expresiones Cron y calculador de próxima ejecución — Dominar Cron sin el azar

Publicado el

La sintaxis de cron confunde incluso a los desarrolladores experimentados. Un generador visual de expresiones cron y un calculador de la próxima ejecución eliminan el trabajo de adivinanza: construye expresiones sin tener que memorizar el orden de los campos, luego verifica que se ejecute exactamente cuando lo esperas.

Generador de Expresiones Cron y Calculadora de Próxima Ejecución – Dominar el Cron sin el azar  1
ANUNCIO · ¿ELIMINAR?

La sintaxis cron es una de esas cosas que los desarrolladores consultan cada vez que la necesitan. No porque sea difícil — sino porque el formato de cinco campos es lo suficientemente opaco como para generar dudas. ¿El campo de las horas viene antes o después del de los minutos? ¿Significa cada cinco minutos o comienza en el minuto 5? */5 Significa cada 5 minutos o a partir del minuto 5?

La etiqueta "expresión cron" en Stack Overflow tiene más de 14.000 preguntas. Eso antes de considerar las inconsistencias de la plataforma que multiplican la confusión: Linux cron utiliza cinco campos, Kubernetes utiliza cinco campos con semánticas ligeramente diferentes, AWS EventBridge añade un sexto campo, y los controladores Quartz colocan un campo de segundos al principio.

Dos herramientas eliminan el ruido: un generador visual de expresiones cron que construye expresiones a partir de entradas legibles y un calculador de la próxima ejecución que te muestra exactamente cuándo se ejecutará tu tarea — sin necesidad de adivinarlo.

Refrescar la sintaxis cron

El formato estándar de cinco campos de cron se lee de izquierda a derecha: minuto, hora, día del mes, mes, día de la semana.

* * * * *
│ │ │ │ └── Day of week (0–7, where 0 and 7 = Sunday)
│ │ │ └──── Month (1–12)
│ │ └────── Day of month (1–31)
│ └──────── Hour (0–23)
└────────── Minute (0–59)

Algunos ejemplos comunes:

  • 0 2 * * * — cada día a las 2:00 a.m.
  • 0 9 * * 1 — cada lunes a las 9:00 a.m.
  • */15 * * * * — cada 15 minutos
  • 0 0 1 * * — medianoche del primer día de cada mes

Simple en aislamiento. En la práctica, la ambigüedad se agrava: ¿para el día de la semana lunes o domingo? ¿Este entorno soporta valores de paso? Aquí es donde un generador gana su valor. 1 ¿Para el día de la semana lunes o domingo? ¿Este entorno soporta valores de paso? Aquí es donde un generador gana su valor.

Herramienta 1: Generador de expresión cron

El Generador de expresiones cron Transforma la sintaxis abstracta en una interfaz punto y clic. Establece valores para cada componente — minuto, hora, día, mes, día de la semana — y la herramienta genera la expresión. Sin necesidad de memorizar el orden de los campos, sin dudas sobre caracteres especiales.

Dos ejemplos prácticos:

Copia de base de datos diaria a las 2 a.m.

Establecer minuto en 0, hora en 2, dejar el día del mes, el mes y el día de la semana en *. Salida: 0 2 * * *. Esto se ejecuta exactamente a las 02:00 cada día.

Informe semanal cada lunes a las 9 a.m.

Establecer minuto en 0, hora en 9, día del mes en *, mes en *, día de la semana en 1 (lunes). Salida: 0 9 * * 1.

Donde el generador realmente brilla es con valores de paso y rangos — */5 (cada 5 minutos), 1-5 (lunes a viernes), 0,12 (medianoche y mediodía). Estas combinaciones son las donde la carga mental de la sintaxis cron se vuelve una limitación, y un constructor visual hace que la lógica sea explícita antes de que llegue a producción.

Herramienta 2: Calculador de próxima ejecución cron

Obtener la expresión correcta es el primer paso. Confirmar que se ejecute cuando se espera es el segundo paso — y es fácil omitirlo.

El Calculadora de próximas ejecuciones cron Toma cualquier expresión cron y muestra las próximas 10 ejecuciones programadas, calculadas desde ahora. Pega tu expresión y obtén el resultado inmediatamente.

Un caso práctico: has escrito 0 9 * * 1-5 creyendo que se ejecuta de lunes a viernes a las 9 a.m. Pégalo en el calculador y las próximas 10 ejecuciones aparecen inmediatamente, haciendo evidente si tienes el rango correcto. Si por error has escrito 0 9 * * 0-5 (de domingo a viernes en cambio), el resultado de la próxima ejecución muestra una ejecución el domingo y detectas el error antes de la implementación.

Esto es más rápido que desplegar una tarea, esperar y revisar los logs — especialmente para tareas programadas una vez por semana o una vez por mes, donde una expresión mal configurada podría pasar desapercibida durante semanas.

Diferencias entre plataformas: Linux, Kubernetes, GitHub Actions y AWS

Aquí es donde el cron se vuelve realmente confuso. La misma expresión puede significar cosas diferentes — o incluso ser inválida — dependiendo del scheduler que la ejecute.

Cron de Linux (5 campos)

El original. Cinco campos: minute hour day month weekday. Configurado mediante crontab -e. Sin soporte para segundos. Día de la semana: 0 y 7 ambos significan domingo.

CronJobs de Kubernetes (5 campos)

Kubernetes utiliza el mismo formato de cinco campos para su campo schedule: , funcionalmente equivalente al cron de Linux. Los valores de paso y rangos funcionan de la misma manera. No añade un campo de segundos, a pesar de lo que puedas haber leído. no EventBridge / CloudWatch Events (6 campos)

EventBridge utiliza un formato de seis campos diferente:

. El campo de año es obligatorio y no puede omitirse. También utiliza minute hour day month weekday yearcuando un campo no es aplicable — debes usar ? en lugar de * para el día del mes o del día de la semana, ya que especificar ambos es ambiguo. ? GitHub Actions (5 campos, solo UTC)

GitHub Actions acepta la sintaxis estándar de cinco campos de cron en el campo de desencadenamiento. Todos los tiempos son UTC. El intervalo mínimo de programación es de 5 minutos, y las tareas programadas pueden ejecutarse después de la hora programada durante periodos de alta carga en la infraestructura de GitHub.

Quartz / Spring Scheduler (6–7 campos) schedule: Los controladores basados en Java como Quartz y Spring Scheduling añaden un campo

al principio:

. Esto significa que segundos se ejecuta cada 5 segundos — no cada 5 minutos. Fácil de confundir si estás pasando entre cron de Linux y Java. second minute hour day month weekday [year]Patrones comunes de cron 0/5 * * * * ? Cuando se ejecuta

:00, :15, :30, :45 cada hora

Uso recomendadoExpresiónA medianoche diaria
Cada 15 minutos*/15 * * * *Cada día, 00:00
Copia diaria a las 2 a.m.0 0 * * *Cada día, 02:00
Días laborables a las 9 a.m.0 2 * * *Lunes a viernes, 09:00
Limpieza semanal (medianoche de domingo)0 9 * * 1-5Domingos, 00:00
A las 12 del mediodía del primer día del mes0 0 * * 01er día de cada mes, 12:00
Cada hora0 12 1 * *Dos veces al día
Cada hora0 * * * *08:00 y 20:00 diariamente
Generador de expresión cron y calculador de próxima ejecución — Dominar el cron sin adivinarlo 20 8,20 * * *Generador de expresión cron y calculador de próxima ejecución — Dominar el cron sin adivinarlo 1
¿Quieres eliminar publicidad? Adiós publicidad hoy

Instalar extensiones

Agregue herramientas IO a su navegador favorito para obtener acceso instantáneo y búsquedas más rápidas

añadir Extensión de Chrome añadir Extensión de borde añadir Extensión de Firefox añadir Extensión de Opera

¡El marcador ha llegado!

Marcador es una forma divertida de llevar un registro de tus juegos, todos los datos se almacenan en tu navegador. ¡Próximamente habrá más funciones!

ANUNCIO · ¿ELIMINAR?
ANUNCIO · ¿ELIMINAR?
ANUNCIO · ¿ELIMINAR?

Noticias Aspectos técnicos clave

Involucrarse

Ayúdanos a seguir brindando valiosas herramientas gratuitas

Invítame a un café
ANUNCIO · ¿ELIMINAR?