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…



Isaac P. E.

Soy un apasionado de la tecnología y me encanta compartir, pero sobre todo aprender cada día más. Me gusta todo lo que tenga que ver con la ciencia y leer sobre esta temática. En mi tiempo libre escribo un libro sobre microprocesadores, mi tema favorito. También me gusta realizar diseños electrónicos en Basic Stamp, Arduino, además me encanta jugar con Linux. Algunos de mis estudios son: - Módulo superior de electrónica y microelectrónica. - Módulo de domótica. - Experto en gestión medioambiental en la empresa. - Técnico en prevención en la industria. - Técnico en montaje y reparación de ordenadores. - Técnico en reparación de portátiles. - Técnico en redes informáticas. - Curso GNU/Linux. Otros conocimientos: inglés, ofimática, programación en diversos lenguajes (C, KOP, VHDL, PBASIC, Arduino y HTML), conocimientos avanzados de Windows y Linux,...

2 comentarios

  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

Escribe un comentario