Lección 1
¿Qué es cron?
Jobs programados y dónde aparece cron Unix de cinco campos.
Cron es un programador de tareas basado en tiempo. En la tradición Unix, una expresión cron (o línea crontab) indica al sistema cuándo ejecutar un comando o disparar un job — no qué hace el job.
Una línea, cinco decisiones
El cron Unix clásico usa cinco campos separados por espacios:
minute hour day-of-month month day-of-week
Ejemplo: 0 9 * * 1-5 significa «en el minuto 0, hora 9, cada día del mes, cada mes, en días laborables (lunes–viernes)». En lenguaje llano: 09:00 en días laborables.
El ejecutor de jobs evalúa la hora actual contra cada campo. Cuando todos coinciden, el job se dispara.
Dónde te encuentras con cron
| Contexto | Uso típico |
|---|---|
Linux crontab -e | Rotación de logs, backups, calentamiento de caché |
Kubernetes CronJob | Limpieza de namespace, generación de informes |
GitHub Actions schedule | Builds nocturnos, escaneos de dependencias |
| Programadores cloud gestionados | Reglas Lambda/EventBridge (a menudo con extensiones) |
| Bibliotecas de aplicación | Programadores in-process inspirados en sintaxis cron |
No toda plataforma usa reglas de cinco campos idénticas — lee siempre la documentación de esa plataforma — pero el modelo mental se transfiere.
Cron vs temporizadores por intervalo
«Cada 5 minutos» puede expresarse como */5 * * * * en cron, o como temporizador de intervalo simple en código. Cron destaca cuando los schedules se alinean con límites de reloj de pared (cada día a las 02:00, primer día del mes, días laborables a las 09:00).
Los temporizadores por intervalo destacan para «cada N segundos desde el inicio del proceso». Elige la herramienta que coincida con expectativas operativas.
Cron no garantiza exactly-once
Pueden perderse ejecuciones si el host estuvo caído, la ejecución anterior superó su ventana o límites de concurrencia bloquearon un nuevo inicio. Diseña jobs idempotentes y seguros si se ejecutan dos veces o se omiten una vez.
Conclusión clave
Las expresiones cron son schedules compactos. La siguiente lección desglosa la gramática de cada campo — *, listas, rangos y pasos — para que puedas leer cualquier línea con confianza.