Linux tiene un demonio cron
que normalmente se ejecuta en el arranque de linux. Este demonio despierta cada
minuto, mira si tiene que ejecutar alguna tarea, la ejecuta y se duerme. Si
queremos que algún comando o tarea se ejecute automáticamente cada cierto
tiempo, la forma de hacerlo es indicándole a este demonio que lo haga.
Hay varios ficheros en el
sistema operativo y para cada ususario en el que este demonio busca tareas para
ejecutar. Uno de ellos es /etc/crontab. El formato de este fichero es minuto
hora dia_del_mes mes dia_de_la_semana usuario comando
Donde minuto, hora,
dia_del_mes, mes y dia_de_la_semana son lo que parecen, a qué hora, minut, etc
se debe ejecutar el comando. En estos campos se pueden poner comodines y hay
varios formatos. Por ejemplo:
un * en minuto es en todos
los minutos.
* 4 * * * significa todos los minutos de las cuatro
de la madrugada, todos los días, todos los meses. Es decir, se ejecuta 60 veces
a las 4:00 am, 4:01 am, ... 4:59 am y ya no más hasta el día siguiente.
También se pueden poner
rangos o valores discretos, así
10,20,30 * * * * significa
todos los días a todas las horas en los minutos 10, 20 y 30, es decir, a las
0:10 am, 0:20 am, 0:30 am, 1:10 am, 1:20 am,
etc, etc.
*/15 10-14 * * * significa
cada 15 minutos entre las 10 am y las 2 pm (las 14).
y así un largo etcétera.
Un ejemplo concreto de lo
que puede haber en un crontab
0 0 * * 6 root rm -rf
/home/usuario/temp borraría todos los sábados (día 6) a las 0:00 horas el
directorio /home/usuario/tmp.
Un usuario puede crear sus
propias tareas y añadirlas a cron. Para ello, en cualquier ubicación crea un
fichero similar a crontab con el nombre que quiera y sin poner el usuario. Por
ejemplo
0 11 * * 1-5
avisameParaElCafe.sh ejecutaría todos los días de lunes a viernes (1-5) a las
11:00 am el comando "avisameParaElCafe.h". Si este fichero se llama
mi_cron, entonces para añadir estas tareas al demonio de cron hay que ejecutar
el comando
crontab mi_cron por
supuesto, suponiendo que el usuario tiene permisos para hacer esto.
0 comentarios:
Publicar un comentario