Probador de Expresiones Cron
Valida expresiones cron y visualiza las próximas ejecuciones, en tu navegador.
at minute */5, every hour
Próximas 5 ejecuciones
13/05/2026, 09:25:00
13/05/2026, 09:30:00
13/05/2026, 09:35:00
13/05/2026, 09:40:00
13/05/2026, 09:45:00
Por qué usarlo
Depura tu cron antes de que falle en producción
Ejecuciones visualizadas
Ve las próximas 10 fechas exactas. Sin sorpresas cuando el job se dispara a las 3 AM.
Formato explicado
Cada campo interpretado en lenguaje natural. Aprende el formato mientras validas.
100% en tu navegador
No se envía ningún dato a un servidor. Prueba expresiones con datos sensibles sin riesgos.
Compatible con todos los entornos
Sintaxis estándar compatible con crontab, Kubernetes CronJob, GitHub Actions y AWS EventBridge.
Cómo funciona
Tres pasos, sin complicaciones
Escribe tu expresión cron
Introduce los 5 campos: minuto, hora, día del mes, mes y día de la semana. Puedes usar ejemplos predefinidos para empezar.
Ve las próximas ejecuciones
El tester calcula al instante las próximas 10 fechas y horas en que se ejecutará el job, con tu zona horaria local.
Depura y copia
Si la expresión tiene errores, verás un mensaje claro. Una vez validada, copia la expresión lista para tu crontab, CI/CD o Kubernetes CronJob.
Preguntas frecuentes
¿Tienes dudas?
Cron es un planificador de tareas del sistema operativo Unix, presente desde la versión 7 de AT&T Unix Research Edition (Unix V7, 1979). Su nombre proviene del griego kronos (tiempo). Permite ejecutar comandos o scripts de forma automática en intervalos definidos — cada hora, cada lunes a las 3 AM, o cualquier combinación de minutos, horas, días, meses y días de la semana.
Los 5 campos, de izquierda a derecha, son: minuto (0-59), hora (0-23), día del mes (1-31), mes (1-12), día de la semana (0-7, donde tanto 0 como 7 representan el domingo). El asterisco (*) significa 'cualquier valor'. Por ejemplo, '30 8 * * 1' significa 'a las 8:30 todos los lunes'.
El asterisco (*) significa 'cada unidad posible'. La sintaxis de paso (*/5) significa 'cada 5 unidades': */5 en el campo de minutos ejecuta el job en los minutos 0, 5, 10, 15... hasta el 55. El rango (1-5) define un intervalo concreto: 1-5 en el campo de día de la semana ejecuta de lunes a viernes.
Usa este tester para visualizar las próximas ejecuciones antes de tocar el servidor. Para pruebas en entornos reales, puedes establecer temporalmente un intervalo muy frecuente (*/1 * * * * para cada minuto) y revisar los logs. En Linux, el comando 'crontab -l' muestra los jobs activos y 'grep CRON /var/log/syslog' muestra el historial de ejecuciones.
Los gotchas más frecuentes son: (1) la numeración del día de la semana — tanto 0 como 7 son domingo en la mayoría de implementaciones, pero algunas solo aceptan 0; (2) las variables de entorno — cron ejecuta los jobs con un entorno mínimo, sin las variables de tu shell interactivo, por lo que debes usar rutas absolutas en los comandos; (3) la zona horaria — cron usa la zona horaria del sistema operativo, no la del usuario; (4) el % literal en comandos debe escaparse como \%; (5) la ausencia de salida redirigida — sin '>> /var/log/myjob.log 2>&1', los errores van al correo del usuario root y son invisibles.
Cron: historia, evolución y cómo funciona el planificador de Unix
El origen del cron moderno se remonta a Ken Thompson, co-creador de Unix en Bell Labs. La primera versión documentada apareció en Unix V7 (1979), aunque existen referencias a implementaciones anteriores desde 1975. El nombre 'cron' viene del griego kronos (tiempo), una elección característica del equipo de Bell Labs, conocido por sus nombres crípticos y minimalistas. La implementación original de Thompson ejecutaba un proceso daemon que despertaba cada minuto y comprobaba si había jobs que lanzar, un modelo que se mantiene hasta hoy.
La versión que definió el estándar moderno fue vixie-cron, escrita por Paul Vixie en 1987 y publicada con su nombre completo (Paul Vixie's cron). Vixie-cron introdujo el archivo crontab por usuario (frente al crontab único del sistema), la sintaxis de listas (1,3,5), rangos (1-5), pasos (*/15) y los alias especiales (@reboot, @daily, @weekly). Esta implementación fue adoptada por la mayoría de distribuciones Linux y sus sucesores (cronie, fcron, bcron) son los que se usan en producción hoy.
En el ecosistema moderno, cron ha evolucionado hacia tres formas principales: (1) los crontabs de sistema (/etc/cron.d/) usados por servicios y paquetes del sistema operativo; (2) systemd timers, que en distribuciones modernas (Ubuntu 16.04+, RHEL 7+) complementan o reemplazan a cron con capacidades de dependencias, logging centralizado en journald y mayor control; (3) Kubernetes CronJob (spec.schedule en formato cron estándar), que orquesta ejecuciones de trabajos batch en contenedores a escala. GitHub Actions, GitLab CI/CD, AWS EventBridge y Google Cloud Scheduler también usan la sintaxis cron estándar para la programación de workflows, lo que hace que dominar el formato sea una habilidad fundamental del stack DevOps.