Cómo usar el comando Watch en Linux

27 feb 2021 3 min di lettura
Cómo usar el comando Watch en Linux
Indice dei contenuti

Introducción

Watch se utiliza para ejecutar cualquier comando arbitrario a intervalos regulares y muestra el resultado del comando en la ventana de la terminal.

Es útil cuando necesita ejecutar un comando repetidamente y observar cómo cambia la salida del comando con el tiempo. Por ejemplo, puede usar el comando watch para monitorear el tiempo de actividad del sistema o el uso del disco.

La utilidad watch es parte del procps (o procps-ng ) que está preinstalado en casi todas las distribuciones de Linux.

Cómo usar el comando Watch

La sintaxis del comando watch es la siguiente:

watch [OPTIONS] COMMAND

Para ilustrar mejor cómo funciona el comando watch, ejecutemos el comando date

watch date

Debería ver una pantalla similar a la siguiente:

Every 2.0s: date TEST-SERVER-1: Sat Dec 7 18:15:37 2019

 Sat Dec 7 18:15:37 CET 2019

Como puede ver en la imagen de arriba, el comando watch borra temporalmente todo el contenido del terminal y comienza a ejecutar el comando dado a intervalos regulares. Si se usa sin ninguna opción, watch ejecutará el comando especificado cada dos segundos.

En la parte superior izquierda del encabezado de la pantalla se puede ver el intervalo de actualización del reloj y el comando ejecutado ( Every 2.0s: date ), mientras que en la parte superior izquierda el reloj muestra las corrientes de hora y fecha. Si desea deshabilitar el encabezado, use la -t ( –no-title ).

La salida del comando especificado se muestra en la pantalla y se actualiza regularmente cada dos segundos.

Para salir del comando de vigilancia, simplemente presione la combinación de Ctrl+C También puede configurar el reloj para salir cuando cambie la salida del comando usando la -g ( –chgexit ).

En las siguientes secciones, veremos las opciones de comando Watch más utilizadas.

Cómo cambiar el intervalo de tiempo

¿Qué sucede si el intervalo de actualización predeterminado de dos segundos no se ajusta al caso de uso?

La -n ( --interval ) seguida del número de segundos deseado le permite cambiar el intervalo de tiempo entre actualizaciones:

watch -n INTERVAL_IN_SECONDS COMMAND

Por ejemplo, para monitorear el uso del espacio en disco con el comando df y actualizar la pantalla cada cinco segundos, ejecutaría:

watch -n 5 df -h
Every 5.0s: df -h TEST-SERVER-1: Sat Dec 7 18:19:19 2019

 Filesystem Size Used Avail Use% Mounted on
 udev 959M 0 959M 0% /dev
 tmpfs 195M 652K 194M 1% /run
 /dev/sda1 19G 2.3G 16G 13% /tmpfs 973M 0 973M 0% /dev/shm
 tmpfs 5.0M 0 5.0M 0% /run/lock
 tmpfs 973M 0 973M 0% /sys/fs/cgroup
 tmpfs 195M 0 195M 0% /run/user/0

Resalta la diferencia entre las actualizaciones.

La -d ( --difference ) hará que el reloj resalte los cambios entre actualizaciones posteriores.

watch -d COMMAND

Supongamos que desea monitorear el tiempo de actividad del sistema ejecutando el comando uptime para resaltar los cambios, use el siguiente comando:

watch -d uptime
Every 2.0s: uptime TEST-SERVER-1: Sat Dec 7 18:21:02 2019

 18:21:02 up 7 days, 1:49, 1 user, load average: 0.00, 0.00, 0.00

Si desea resaltar los aspectos más destacados para que la pantalla sea más clara, use el =cumulative con la opción -d Esto significa que los valores que alguna vez se hayan cambiado permanecerán resaltados.

watch -d=cumulative uptime

Comandos con tubería

Si desea ejecutar un comando que contiene tuberías, debe encerrarlo entre comillas simples o dobles. Si no incluye el comando completo entre comillas, watch solo ejecutará el primer comando y luego pasará la salida al siguiente comando en la canalización.

watch 'COMMAND_1 | COMMAND_2'

Por ejemplo, el siguiente comando monitoreará el número de conexiones activas en el puerto 80 usando una combinación de las utilidades netstat y grep

watch "netstat -anp | grep -c ':80\b.*LISTEN'"

Conclusión

A estas alturas ya debería tener un buen conocimiento de cómo utilizar el watch Puede ver todas las watch con el siguiente comando:

man watch

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.