Ejecutar un comando Linux cada cierto tiempo con Watch

watch comando linux

Automatizar ciertas tareas puede servirnos de gran ayuda, sobre todo cuando son tareas que implican trabajar desde la consola. En nuestra distro Linux podemos contar con diveras herramientas para automatizar tareas, además de poder escribir scripts de Bash para ejecutar una serie de comandos o acciones sin ir uno por uno, e incluso agregarlos al inicio del sistema o programarlos para que se ejecuten en cierta fecha o momento sin que hagamos nada y de forma transparente.

En este artículo vamos a ver cómo se puede ejecutar un comando cada cierto tiempo haciendo uso de watch. Watch es un comando que puede ejecutar un programa u otro comando cada X segundos que le pongamos. Así programamos la ejecución repetitiva de una cierta tarea. Puede ser especialmente práctico para ciertas consultas periódicas o para algunas labores de mantenimiento etc. Puedes aplicarlo a cualquier cosa como puedes ver aquí, el límite es tu imaginación…

Si quieres que termine el bucle o repetición, puedes usar CTRL+C para terminar la acción de Watch o simplemente cerrar la ventana del terminal donde se está ejecutando. La sintaxis de watch es muy sencilla y tiene esta fisionomía:


watch [opciones] comando

Por ejemplo, vamos a ver un ejemplo práctico que consulte el espacio utilizado en nuestras particiones cada 5 min (300segundos). Como para consultar el espacio usado y libre de nuestras particiones se teclea «df -h», pues con watch sería:


watch -n 300 df -h

Puedes consultar el man de watch para ver todas las opciones que tiene, puesto que es bastante flexible. Además, podríamos redirigir la consulta a un fichero para que la salida se imprima en un .txt por ejemplo:

 watch -n 300 df -h > espacio_usado.txt 

De este modo, podremos consultar el fichero espacio_usado.txt donde veremos que se ha imprimido lo mismo que nos mostraría la consola al teclear df -h. Imagina la cantidad de tareas que puedes hacer…


Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: AB Internet Networks 2008 SL
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   David dijo

    Watch es un comando muy útil. Lo uso para controlar la temperatura de mi PC mediante terminal: «watch sensors».
    Ya conocía el comando pero el artículo me ha gustado mucho (breve y bien explicado).

  2.   Mircocaloghero dijo

    Me gustan mucho este tipo de notas. Gracias

  3.   Soldado dijo

    Me sirvió bastante