Un pequeño tip que puede resultar útil especialmente para depurar en tiempo real o hacer un seguimiento de determinadas variables. El comando watch nos permite pasarle como argumento un segundo comando secundario y observar cambios cada X segundos (por defecto 2). De su página man
:
watch runs command repeatedly, displaying its output and errors (the first screenfull). This allows you to watch the program output change over time. By default, the program is run every 2 seconds. By default, watch will run until interrupted
Su sintaxis es bastante sencilla:
watch [opciones] comando-secundario [opciones-comando-secundario]
Por ejemplo, para observar el estado de la memoria con free
, podemos refrescar con watch cada décima de segundo con:
watch -n 0.1 free -m
Combinado con el programa sensors
que nos indica las temperaturas nuestra CPU (entre otras) vemos los cambios cada segundo:
watch -n 1 sensors
Lo mismo podemos hacer para observar conexiones de red con netstat
:
watch -n 1 netstat -netaup
Un comando sencillo pero a la vez versátil, que puede resultar especialmente útil para observar la disponibilidad de recursos de red, CPU, memoria, nº de ficheros abiertos, etc… de nuestro sistema por ejemplo en pruebas de carga de aplicaciones o actividad de red relacionada con servidores web, etc…