¿Qué es el comando watch de Linux y cómo usarlo?
Hay muchas herramientas de monitoreo y solución de problemas técnicos disponibles para un VPS Linux. Sin embargo, muchos son difíciles de instalar o tienen una curva de aprendizaje pronunciada.
Aquí es donde el comando watch de Linux resulta útil. Watch es un comando de Linux incorporado que permite a los usuarios ejecutar un comando específico repetidamente y mostrar el resultado en una salida estándar en una consola o ventana de terminal.
Este tutorial explicará el comando watch de Linux y proporcionará varios casos de uso.
Tabla de Contenidos
¿Qué es el comando watch?
El comando watch de Linux es una herramienta incorporada de línea de comandos que ejecuta comandos definidos por el usuario a intervalos regulares. El comando es especialmente útil para los usuarios que desean monitorear cambios en la salida de su comando a lo largo del tiempo.
Se utiliza comúnmente para rastrear el tiempo de actividad del sistema, la memoria o el uso del disco. El comando watch de Linux se ejecutará simultáneamente en la terminal hasta que se detenga presionando CTRL+C.
Por defecto, el comando watch de Linux ejecuta el comando definido por el usuario cada dos segundos. Sin embargo, los usuarios pueden cambiar fácilmente el intervalo modificando sus opciones.
Además, cuando se combina con diferentes comandos de tubería, watch permite a los usuarios monitorear la creación y eliminación de archivos.
Es útil cuando los usuarios quieren realizar una solución de problemas técnicos con un problema u observar continuamente la salida del script.
Sintaxis del comando watch de Linux
La sintaxis del comando watch se ve así:
watch [opciones] [tu comando]
Por ejemplo, un comando watch combinado con el comando free se vería así:
El comando especificado muestra que el comando watch limpia la ventana del terminal y ejecuta el comando free cada dos segundos. Puedes encontrar la lista de las opciones del comando watch más utilizadas a continuación:
Opción | Explicación |
-d, –differences | Muestra las diferencias entre las actualizaciones del comando watch. Si quieres que todos los valores cambiados permanezcan resaltados, usa la opción combinada -d=cumulative . |
-t, –no-title | Desactiva el encabezado que muestra el intervalo de tiempo, el comando, la hora y fecha actuales, y el nombre del host. |
-n, –interval | Permite a los usuarios especificar el intervalo de tiempo entre actualizaciones de salida en segundos. |
-b, –beep | Emite un pitido cada vez que un comando sale con un error. |
-g, –chgexit | Sale del comando watch cuando cambia la salida del comando del usuario. |
-e, –errexit | Detiene las actualizaciones del comando watch en pantalla cuando ocurre un error y sale del comando después de pulsar una tecla. |
-h, –help | Muestra la página de ayuda. |
-c, –color | Interpreta secuencias de color y estilo ANSI. |
-x, –exec | Reenvía el comando del usuario a exec. |
-p, –precise | Intenta ejecutar el comando definido por el usuario exactamente después de los segundos definidos por la opción –interval. |
Ejemplos de comandos watch de Linux
Echa un vistazo a algunos de los casos de uso del comando watch. Comienza iniciando sesión en tu servidor privado virtual.
Uso del comando watch para resaltar las diferencias entre actualizaciones
Watch actualiza regularmente la salida del comando especificado. Para ver la salida cambiante, usa la opción –d o –differences, ya que resaltará los cambios:
watch -d free
Aquí, los valores de uso de RAM están resaltados en la línea de comandos:
Uso del comando watch para cambiar intervalos de tiempo
Los usuarios pueden cambiar sin esfuerzo la duración entre salidas con la opción -n seguida de un dígito que representa el número de segundos. Por ejemplo:
watch -n 5 date
Este comando reflejará la salida del comando de fecha actualizada después de cada cinco segundos. Recuerda que watch no puede observar intervalos regulares de menos de 0.1 segundos.
Uso del comando watch para salir después de un solo cambio
A menudo es útil que el comando watch salga después de un cambio en la salida. Los usuarios pueden lograr esto con la ayuda de la opción –g . Un ejemplo se vería así:
watch -g free
La opción –g detiene el comando especificado siempre que haya cambios en el consumo de memoria.
Uso del comando watch para ocultar el encabezado del comando
Es posible desactivar el encabezado que muestra una línea en blanco, la hora actual, el comando y el intervalo con la ayuda de la opción –t. Por ejemplo:
watch -t free
Cómo usar el comando Watch de Linux con otros comandos pipeline
El comando watch también puede ser útil con otros comandos de tubería:
Uso del comando watch para monitorear archivos
Para ver el estado de un archivo en particular o sus cambios, usa el siguiente comando:
mira -d 'ls -l | fgrep newuser'
Aquí, newuser es el nombre de usuario y ls -l representa los archivos en el directorio del usuario.
Uso del comando watch como un reloj
Para usar el comando watch como un reloj, ejecuta el comando especificado a continuación:
watch –t date
El comando de fecha ejecutado mostrará solo el reloj y la fecha.
Uso del comando watch para ver el estado de la red
Es posible usar el comando watch para monitorear tu red. Por ejemplo:
watch "netstat -anp | grep -c ':22\b.*LISTEN'"
El comando mostrará las conexiones activas en el puerto 22. También puedes canalizar el comando tail para obtener una salida específica. Por ejemplo, el siguiente comando ejecuta netstat cada dos segundos e imprime los últimos tres registros de red:
mira -n 2 "netstat -ant | tail -3"
Conclusión
La solución de problemas técnicos y el seguimiento de cambios son partes importantes para cualquier usuario de Linux, que es donde entra en juego el comando watch.
Este facilita a los usuarios observar diversos cambios en la salida de comandos sin tener que ejecutarlos repetidamente.
En este tutorial, hemos cubierto los conceptos básicos del comando watch y proporcionado algunos excelentes casos de uso para él.
Esperamos que este tutorial te haya sido útil. Si tienes alguna pregunta o sugerencia sobre el comando watch en Linux, déjala en la sección de comentarios abajo.
Descubre otros comandos de Linux
Cómo verificar el espacio en disco en Linux
Cómo usar Linux Screen para una gestión efectiva del terminal
Cómo transferir datos con el comando curl
Cómo calcular la ejecución de procesos con el comando time
Cómo transferir archivos usando el comando scp
Cómo apagar y reiniciar un servidor
Cómo transferir y sincronizar datos con rsync
Cómo administrar y listar servicios en Linux
Cómo usar el comando grep de Linux