5.3. crontab: reportar o editar su archivo crontab

crontab es un comando que le permite ejecutar comandos a intervalos de tiempo regulares, con la ventaja adicional que no tiene que estar conectado al sistema y que el reporte de salida se le envía por correo electrónico. Los intervalos se pueden especificar en minutos, horas, días, e incluso meses. Dependiendo de las opciones, crontab actuará diferentemente:

Comencemos editando un crontab. Si ingresa crontab -e, estará frente a su editor de texto favorito si tiene definida la variable de entorno EDITOR o la variable de entorno VISUAL, caso contrario se usará VI. Una línea de un archivo crontab se compone de seis campos. Los primeros cinco campos son los intervalos de tiempo para los minutos, horas, días en el mes, meses y días en la semana. El sexto campo es el comando a ejecutar. Las líneas que comienzan con un # se consideran como comentarios y serán ignoradas por crond (el programa que es responsable de ejecutar los archivos crontab). Aquí tiene un ejemplo de crontab:

Nota

para poder imprimir esto con una tipografía legible, tenemos que separar las líneas largas. Por lo tanto, algunos trozos deben ser ingresados en una única línea. Cuando el caracter \ termina en una línea, esto significa que la línea tiene que continuarse. Esta convención funciona en los archivos Makefile y en el shell, así como también en otros contextos.

# Si no quiere recibir correo electrónico simplemente
#   "comente" la siguiente línea
#MAILTO=""
#
# Hacer un reporte de todas las imágenes nuevas a
#   las 14 hs. cada dos días, desde el ejemplo de
#   arriba - depués de eso, "retocar" el archivo de
#   "estampa". El "%" se considera como una línea
#   nueva, esto le permite poner varios comandos 
#   en una misma línea.
0 14 */2 * *  find /shared/images              \
  -cnewer /shared/images/stamp                 \
  -a -iregex ".*\.jpe?g"                       \
  -a -not -regex                               \
    ".*/old/.*"%touch /shared/images/stamp
#
# Cada Navidad, reproducir una melodía :)
0 0 25 12 * mpg123 $HOME/canciones/feliz_navidad.mp3
#
# Imprimir la lista de compras cada martes a las 17 hs...
0 17 * * 2 lpr $HOME/lista_de_compras.txt
Hay muchas otras maneras de especificar los intervalos aparte de las que se muestran. Por ejemplo, puede especificar un conjunto de valores discretos separados por comas (1,14,23) o un rango (1-15), o incluso una combinación de ambos (1-10,12-20), con un paso opcional (1-12,20-27/2). Ahora queda en sus manos encontrar comandos útiles para poner :-)


Tux sobre Estrella por MandrakeSoft Linux es una marca registrada de Linus Torvalds. Todas las otras marcas registradas y copyrights son la propiedad de sus respectivos dueños.
A menos que se diga lo contrario, todo el contenido de estas páginas y todas las imágenes tienen Copyright de MandrakeSoft S.A. y de MandrakeSoft Inc. 2000.
http://www.linux-mandrake.com/