Desarrollador

Analizador de expresiones Cron

Pega cualquier expresión cron de 5 campos y descubre al instante qué significa en lenguaje sencillo — se acabó entrecerrar los ojos ante asteriscos y barras para averiguar cuándo se ejecuta una tarea.

¿Te ha ayudado esta calculadora?

¿Qué es Analizador de expresiones Cron?

Cron es la sintaxis de programación estándar usada por las tareas cron de Unix/Linux, los pipelines de CI/CD, los CronJobs de Kubernetes e innumerables otros programadores de tareas. Una expresión cron condensa toda una programación recurrente en cinco campos compactos, lo cual es potente pero notoriamente difícil de leer de un vistazo — ¿"0 */4 * * 1-5" significa cada 4 horas en días laborables, o algo totalmente distinto? Este analizador descompone una expresión cron campo por campo y la traduce a una frase en lenguaje sencillo, para que puedas verificar que una programación es correcta antes de implementarla, o entender rápidamente una programación escrita por otra persona sin consultar una tabla de sintaxis cron.

Cuándo Usar Esta Calculadora

  • Cuando verifica un programa cron antes de implementar una tarea programada o pipeline CI/CD
  • Cuando depura por qué un trabajo programado se ejecutó o no se ejecutó en un momento inesperado
  • Cuando revisa un CronJob de Kubernetes o un programa de GitHub Actions escrito por un compañero
  • Cuando aprende sintaxis cron para un curso de administración de sistemas o certificación DevOps
  • Cuando audita entradas crontab existentes durante una migración de servidor
  • Cuando diseña un patrón de programación complejo que combina múltiples restricciones de tiempo

Pasos:

  1. Pega o escribe una expresión cron de 5 campos en el campo de entrada.
  2. Observa cada campo desglosado individualmente con su significado.
  3. Lee la traducción en lenguaje sencillo de toda la programación.
  4. Prueba un botón de preajuste para programaciones comunes como "cada hora" o "días laborables a las 9 AM".

Fórmula

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

Casos de uso

  • Verificar una programación cron antes de implementar una tarea programada o un pipeline de CI/CD
  • Entender un CronJob de Kubernetes o una función programada sin servidor escrita por un compañero
  • Depurar por qué una tarea programada se ejecutó (o no) en un momento inesperado
  • Aprender la sintaxis cron para un curso de administración de sistemas o DevOps
  • Auditar entradas de crontab existentes durante una migración de servidor

Beneficios Clave

  • Traduce al instante la críptica sintaxis cron a lenguaje sencillo
  • Desglosa cada uno de los 5 campos individualmente para mayor claridad
  • Preajustes con un clic para los patrones de programación más comunes
  • Sin registro, funciona completamente en tu navegador

Consejos Profesionales

  • Ante la duda, primero prueba con un horario muy próximo para confirmar que la programación se activa como se espera
  • Usa rangos (1-5) en lugar de enumerar cada valor con comas cuando sea posible, para mayor legibilidad
  • Verifica la configuración de zona horaria de tu servidor o programador — es la fuente más común de errores cron de "hora incorrecta"
  • Para cualquier cosa más compleja que una programación diaria/semanal simple, escribe la descripción en lenguaje sencillo y compárala con tu intención antes de implementarla

Errores Comunes que Debes Evitar

  • Olvidar que el día del mes y el día de la semana se combinan con OR, no con AND
  • Confundir el día de la semana indexado desde 0 (0=domingo) con las convenciones indexadas desde 1 de otros sistemas
  • Suponer que */7 en el campo del día del mes significa "cada 7 días" — en realidad significa los días 1, 8, 15, 22, 29, reiniciando cada mes
  • Olvidar que la mayoría de las implementaciones de cron se ejecutan en la zona horaria local del servidor, no en UTC ni en la zona horaria del usuario

Términos Clave Explicados

Cron: Un programador de tareas basado en tiempo usado en sistemas operativos tipo Unix
Crontab: El archivo o comando usado para definir una lista de tareas cron
Valor de paso: La sintaxis "/N" que significa "cada N unidades" comenzando desde el valor mínimo de un campo
CronJob: El recurso nativo de Kubernetes para ejecutar tareas programadas con cron

Conceptos relacionados

  • Calculadora de Diferencia de Tiempo: Calcule la duración entre dos fechas y horas
  • Calculadora de Días Hasta: Cuenta los días hasta una fecha específica
  • Convertidor de Marca de Tiempo Unix: Convierta entre marcas de tiempo Unix y fechas
  • Calculadora de Superposición de Zona Horaria: Encuentre la superposición de horas laborables entre zonas horarias
  • Formateador JSON: Formatee y valide datos JSON

Ejemplo

La expresión "0 9 * * 1-5" se desglosa en: minuto=0, hora=9, cada día del mes, cada mes, de lunes a viernes — es decir, "A las 09:00, de lunes a viernes".

Interpretación de sus resultados

El analizador descompone una expresión cron de 5 campos en sus componentes individuales y traduce cada uno a lenguaje sencillo. Los cinco campos son: 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 trabajo se ejecuta cuando TODOS los cinco campos coinciden con la hora actual — esta es la lógica AND entre campos. Preste especial atención a la interacción entre el día del mes y el día de la semana, que utiliza lógica OR (no AND). Un trabajo programado con día 15 Y día de la semana 5 se ejecutará el día 15 de cada mes Y cada viernes — no solo los viernes que caen en el día 15. Esta es una fuente común de errores de programación.

Preguntas frecuentes

¿Cuáles son los 5 campos de una expresión cron?
En orden: 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). Una tarea se ejecuta cuando los cinco campos coinciden con la hora actual.
¿Qué significa un asterisco (*) en la sintaxis cron?
Un asterisco significa "se permite cualquier valor" para ese campo. Por ejemplo, * en el campo de la hora significa que la tarea puede ejecutarse en cualquier hora, es decir, ese campo no restringe la programación.
¿Qué significa */5?
La barra denota un valor de paso. */5 en el campo de minutos significa "cada 5 minutos" — comenzando desde el valor mínimo del campo y repitiéndose cada 5 unidades.
¿Cómo programo una tarea solo para días laborables?
Usa un rango en el campo de día de la semana: 1-5 representa de lunes a viernes. Combinado con una hora y un minuto específicos, por ejemplo "0 9 * * 1-5" se ejecuta a las 9:00 AM cada día laborable.
¿Qué significa la coma en la sintaxis cron?
Una coma separa múltiples valores en un solo campo. Por ejemplo, 0,15,30,45 en el campo de minuto significa que la tarea se ejecuta en los minutos 0, 15, 30 y 45. La coma es un simple O: la tarea se ejecuta en cualquiera de los valores listados.
¿Qué es el guión (rango) en la sintaxis cron?
Un guión define un rango de valores. Por ejemplo, 1-5 en el campo de día de la semana significa de lunes a viernes (días 1 a 5). Los rangos son inclusivos de ambos extremos. Puede combinar rangos con otra sintaxis: 1-5,0 significa de lunes a viernes más domingo.
¿Cómo programo una tarea para que se ejecute cada 2 semanas?
El cron estándar no admite programación quincenal de forma nativa. Tiene dos opciones: (1) Use un script auxiliar que verifique la fecha y solo se ejecute cada dos semanas, o (2) Use un programador de tareas que admita expresiones más complejas como AWS EventBridge o temporizadores del sistema con activadores basados en calendario.
¿Qué zona horaria usa cron?
El cron estándar usa la zona horaria local del servidor. Si su servidor está configurado para UTC, todos los trabajos cron se ejecutan en UTC independientemente de su zona horaria local. Siempre verifique la configuración de zona horaria del servidor, especialmente en entornos de nube donde la zona horaria predeterminada puede no coincidir con su zona horaria esperada.
¿Cuál es la diferencia entre cron y crontab?
Cron es el demonio (servicio en segundo plano) que ejecuta tareas programadas. Crontab es el archivo de configuración (o comando) que define la lista de trabajos cron. Cuando edita su crontab, está escribiendo las definiciones de horario que el demonio cron lee y ejecuta.
¿Cómo manejo el horario de verano con cron?
La mayoría de las implementaciones de cron no se ajustan automáticamente al horario de verano. Cuando los relojes avanzan, un trabajo programado para las 2:00 AM puede omitirse por completo. Cuando los relojes retroceden, un trabajo puede ejecutarse dos veces. Para evitar problemas, programe trabajos fuera de las horas de transición (2:00–3:00 AM) o use programación basada en UTC.
¿Puedo usar cron para intervalos subminutales?
El cron estándar tiene granularidad de minuto y no puede programar tareas con más frecuencia que una vez por minuto. Para intervalos subminutales, use alternativas como temporizadores systemd, CronJobs de Kubernetes con intervalos más cortos o programadores a nivel de aplicación (node-cron con soporte de milisegundos).

Descubre Más Herramientas

Selección fresca de toda nuestra biblioteca de herramientas.