Patrones rápidos:
Cada minuto Cada hora Cada día a medianoche Días laborables 9am Cada domingo 1° de cada mes Cada 15 min Diario 2am Vie 6:30pm

¿Qué es una expresión cron?

Una expresión cron es una cadena de cinco campos separados por espacios que define un horario para tareas automatizadas (cron jobs). Originaria de Unix/Linux, cron se usa ampliamente en programadores en la nube (AWS EventBridge, GitHub Actions, Kubernetes CronJobs, Heroku Scheduler) y frameworks de aplicaciones.

Los cinco campos representan: minuto (0–59), hora (0–23), día del mes (1–31), mes (1–12) y día de la semana (0–7, donde tanto 0 como 7 = domingo).

Referencia de sintaxis cron

Cada campo admite estos caracteres especiales:

  • * — Cualquier valor (comodín). Ejemplo: * * * * * se ejecuta cada minuto.
  • , — Separador de lista. Ejemplo: 1,3,5 en el campo de hora significa 1am, 3am y 5am.
  • - — Rango. Ejemplo: 1-5 en el campo de día de la semana significa de lunes a viernes.
  • / — Paso. Ejemplo: */5 en el campo de minutos significa cada 5 minutos.

Cómo usar esta herramienta

Escriba o pegue su expresión cron en el campo de entrada de arriba. La herramienta explicará instantáneamente cada campo en lenguaje sencillo, mostrará el horario completo legible y los próximos 5 tiempos de ejecución basados en la fecha y hora actuales. Use los botones de patrones rápidos para insertar expresiones comunes.

Ejemplos comunes de expresiones cron

  • * * * * * — Cada minuto
  • 0 * * * * — Al inicio de cada hora
  • 0 0 * * * — Cada día a medianoche
  • 0 9 * * 1-5 — Cada día laborable a las 9:00 AM
  • 0 0 1 * * — A medianoche el primer día de cada mes
  • */15 * * * * — Cada 15 minutos
  • 0 2 * * 0 — Cada domingo a las 2:00 AM (común para respaldos semanales)
  • 0 8,12,17 * * 1-5 — Tres veces al día en días laborables (8am, mediodía, 5pm)

Preguntas frecuentes sobre cron

¿Qué significa '* * * * *' en cron?

La expresión * * * * * significa "ejecutar cada minuto de cada hora de cada día." Cada asterisco es un comodín que coincide con todos los valores válidos para su posición: minuto (0–59), hora (0–23), día del mes (1–31), mes (1–12) y día de la semana (0–7). Es la expresión cron más permisiva y se usa comúnmente para tareas que deben ejecutarse con frecuencia.

¿Cómo ejecuto un cron job cada 5 minutos?

Use la sintaxis de paso con una barra: */5 * * * *. El / significa "cada N", así que */5 en el campo de minutos significa cada 5 minutos — en :00, :05, :10, :15, y así sucesivamente. Para cada 15 minutos use */15 * * * *. Para minutos específicos como 0 y 30 de cada hora, use 0,30 * * * * (lista separada por comas).

¿Cuál es la diferencia entre día de la semana 0 y 7 en cron?

Tanto 0 como 7 representan el domingo. La convención tradicional de Unix usa 0 para el domingo hasta 6 para el sábado, pero muchas implementaciones de cron también aceptan 7 como domingo por compatibilidad. Los días 1–5 son de lunes a viernes, y 6 es el sábado. Para programar solo en días laborables, use 1-5 en la posición de día de la semana: 0 9 * * 1-5 se ejecuta a las 9 AM de lunes a viernes.

¿Cron admite programación a nivel de segundos?

El cron estándar de Unix no admite programación por debajo del minuto — la unidad más pequeña es un minuto. Si necesita precisión a nivel de segundos, considere usar herramientas del sistema como systemd timers (Linux), Task Scheduler (Windows), o programadores a nivel de aplicación como node-cron, APScheduler (Python) o Quartz (Java) que admiten expresiones de 6 campos incluyendo segundos.

Herramientas relacionadas para desarrolladores