tomai
Entrar

Referencia Cron: los cinco campos, caracteres especiales y trampas

Cron ejecuta comandos según un horario descrito en cinco campos — minuto, hora, día del mes, mes y día de la semana — seguidos del comando mismo. Una línea como 30 9 * * 1 significa las nueve y media cada lunes por la mañana, y casi todo sistema Unix más incontables planificadores hablan este dialecto.

1. Campos y valores permitidos

Los minutos van de 0 a 59, las horas de 0 a 23, los días del mes de 1 a 31, los meses de 1 a 12 y los días de semana de 0 a 7, donde 0 como 7 significan domingo. Una estrella significa cada valor en esa posición, así que 0 * * * * se dispara al inicio de cada hora.

2. Pasos, rangos y listas

Una barra define un paso — */15 en el campo minuto significa cada quince minutos — un guion define un rango como día de semana 1-5 para lunes a viernes, y las comas unen listas como 0,30. Se combinan libremente, así que 0 9-17 * * 1-5 se lee como una vez por hora durante la jornada laboral, solo entre semana.

3. La rareza O de los campos de día

Cuando los campos día del mes y día de semana están ambos restringidos, cron se dispara cuando cualquiera coincide — no ambos. Una línea pensada para el primer lunes del mes necesita cuidado extra, porque restringir ambos campos ensancha el horario en vez de estrecharlo. Deja uno de los dos en estrella y el otro mantiene solo el control.

4. Presets y trampas de entorno

Atajos como daily o weekly se expanden a patrones de campos, pero la forma clásica de cinco campos viaja mejor entre sistemas. Recuerda que cron corre con un entorno mínimo: rutas, locales y rarezas del shell de tu terminal no te acompañan, así que usa siempre rutas absolutas y prueba el comando a mano primero. Construye expresiones visualmente y previsualiza las próximas ejecuciones con nuestro generador cron, que calcula las próximas fechas directamente en tu navegador.