Cómo construir expresiones cron

· 4 min de lectura

Las expresiones cron son la forma estándar de definir programaciones recurrentes en Linux, plataformas cloud, pipelines CI/CD y programadores de tareas. La sintaxis es compacta pero poco intuitiva — un generador visual te muestra exactamente cuándo se va a ejecutar tu tarea.

Sintaxis de cron

Una expresión cron tiene 5 campos:

┌───────────── minuto (0-59)
│ ┌───────────── hora (0-23)
│ │ ┌───────────── día del mes (1-31)
│ │ │ ┌───────────── mes (1-12)
│ │ │ │ ┌───────────── día de la semana (0-6, domingo=0)
│ │ │ │ │
* * * * *

Programaciones cron habituales

Programación Expresión Significado
Cada minuto * * * * * Se ejecuta cada 60 segundos
Cada 5 minutos */5 * * * * A las :00, :05, :10, :15...
Cada hora 0 * * * * Al comienzo de cada hora
Todos los días a medianoche 0 0 * * * Una vez al día a las 00:00
Todos los días a las 9 h 0 9 * * * Una vez al día a las 09:00
Todos los lunes a las 8 h 0 8 * * 1 Semanal el lunes
El día 1 de cada mes 0 0 1 * * Mensual a medianoche el día 1
Días laborables a las 18 h 0 18 * * 1-5 De lunes a viernes

Cómo construir una expresión cron

  1. Define tu programación — usa los controles visuales para seleccionar los valores de minuto, hora, día, mes y día de la semana. O parte de una plantilla como «cada hora» o «todos los días a medianoche».
  2. Previsualiza las ejecuciones — el generador muestra las 5 próximas ejecuciones para verificar que la programación sea correcta.
  3. Copia la expresión — pégala en tu crontab, tu configuración CI/CD o tu programador cloud.

Caracteres especiales

Carácter Significado Ejemplo
* Cualquier valor * * * * * = cada minuto
*/n Cada n */15 * * * * = cada 15 min
, Varios valores 0 8,12,18 * * * = 8 h, mediodía, 18 h
- Rango 0 9-17 * * * = cada hora de 9 a 17 h

Consejos

Preguntas frecuentes

¿Cuál es el formato de una expresión cron?

Una expresión cron estándar tiene 5 campos separados por espacios, que representan 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 es domingo). Un asterisco (*) significa «cualquier» valor para ese campo.

¿Qué significa */5 en cron?

La sintaxis */5 significa «cada 5». En el campo minuto, */5 significa cada 5 minutos (0, 5, 10, 15...). En el campo hora, */5 significa cada 5 horas. Funciona en cualquier campo.

¿Las expresiones cron son idénticas en todas las plataformas?

El formato de 5 campos es estándar en el cron de Linux, AWS EventBridge, GitHub Actions y la mayoría de los sistemas de programación. Algunas plataformas añaden un 6.º campo para los segundos o el año. Consulta la documentación de tu plataforma.

¿Cómo programar para el último día de cada mes?

El cron estándar no tiene una palabra clave de «último día». Usa una solución alternativa como una ejecución diaria con una comprobación de fecha en tu script, o usa extensiones propias de la plataforma (AWS EventBridge admite L para «last»).