cronjob guru
La forma más fácil de crear y entender expresiones cron.
¿Qué es una Expresión Cron?
Las expresiones cron consisten en 5 campos, separados por espacios, que se utilizan para especificar en qué horario debe ejecutarse una tarea. Se utilizan comúnmente en entornos como Unix/Linux, AWS, Kubernetes u otras herramientas que permiten programar y ejecutar tareas recurrentes según tus propios términos.
| Campo | Valores Permitidos | Descripción |
|---|---|---|
| Minute | 0-59 | Minuto de la hora |
| Hour | 0-23 | Hora del día (formato 24 horas) |
| Day of Month | 1-31 | Día del mes |
| Month | 1-12 | Mes del año |
| Day of Week | 0-6 | Día de la semana (0 es Domingo, 1 es Lunes, etc.) |
Algunos casos de uso comunes donde podrías necesitar expresiones cron son por ejemplo:
- Hacer un backup de tu base de datos cada noche a las 2:30 AM
- Ejecutar un script para verificar el estado de tus servidores cada 15 minutos
- Enviar una notificación a tus usuarios cada día a las 9:00 AM
Caracteres Especiales
| Carácter | Descripción |
|---|---|
| * | Significa "todos los valores" Ejemplo: Cada minuto, cada hora |
| , | Se usa para separar múltiples valores Ejemplo: "1,3,5" significa exactamente en 1, 3 y 5 |
| - | Se usa para definir rangos Ejemplo: "1-5" significa 1, 2, 3, 4, 5 |
| / | Cada n-ésima unidad Se usa comúnmente para especificar, por ejemplo, cada 15 minutos, lo cual se escribe como */15 |
| L | "Último Día del Mes" Este valor solo puede usarse en el campo de día del mes (3er campo). Advertencia: Este carácter especial podría no ser compatible con todos los ejecutores de cron. |
| -, | Uso Combinado de Rango y Separador Puedes usar el operador de rango y el separador juntos. La expresión 1-5,9,11-12 se expande a 1,2,3,4,5,9,11,12 |
Ejemplos Comunes
| Expresión Cron | Significado | |
|---|---|---|
| * * * * * | Cada minuto | |
| 0 * * * * | Cada hora en el minuto 0 | |
| 0 0 * * * | Cada día a medianoche (12:00 AM) | |
| 0 0 * * 0 | Cada Domingo a medianoche | |
| */15 * * * * | Cada 15 minutos | |
| 0 0 1 * * | A medianoche el primer día de cada mes | |
| 0 12 * * 1-5 | Al mediodía en días laborales (Lunes a Viernes) |
Expresiones Especiales
Algunas implementaciones de cron soportan expresiones abreviadas especiales que facilitan la especificación de horarios comunes.
| Expresión | Equivalente A | Descripción |
|---|---|---|
| @yearly | 0 0 1 1 * | Una vez al año a medianoche el 1 de Enero |
| @monthly | 0 0 1 * * | Una vez al mes a medianoche el primer día |
| @weekly | 0 0 * * 0 | Una vez a la semana a medianoche el Domingo |
| @daily | 0 0 * * * | Una vez al día a medianoche |
| @hourly | 0 * * * * | Una vez por hora al inicio de la hora |
| @reboot | N/A | Ejecutar una vez al iniciar (funciona en crontab, por ejemplo) |
Advertencia de Compatibilidad
Estas expresiones especiales pueden no ser compatibles con todas las implementaciones de cron o sistemas de programación. Para máxima compatibilidad, se recomienda usar las expresiones cron estándar de 5 campos en lugar de estos atajos.

