fs_usage devuelve MUCHAS líneas ioctl

0

He estado leyendo sobre comandos de Terminal interesantes (lo he usado para siempre, pero siempre hay más que aprender) cuando me topé con esto . Corrí sudo fs_usage y obtuve mucho de esto:

...
13:39:09  ioctl                   0.000019   WindowServer
13:39:09  ioctl                   0.000017   WindowServer
13:39:09  ioctl                   0.000020   WindowServer
13:39:09  ioctl                   0.000018   WindowServer
...

Me imagino que, si alguna vez necesito usar esto, sería bueno tener una forma no solo de filtrar la actividad del sistema de archivos relacionada con el WindowServer, en particular, sino también de otros procesos. También sería bueno especificar un servicio o proceso para el cual devolver información.

¿He leído mal la utilidad de esta función? ¿Hay alguna manera de deshacerse de esas numerosas llamadas a WindowServer? ¿Puedo especificar los procesos en los que estoy interesado?

    
pregunta Carter Pape 19.07.2015 - 19:44

1 respuesta

3

Todo eso es posible utilizando fs_usage con varias opciones. También puede canalizarlo a grep para restringir aún más la salida.

Para excluir un proceso o un pid (y también fs_usage) use la opción -e:

sudo fs_usage -e WindowsServer
sudo fs_usage -e 123

Al especificar la opción -f se activa el filtrado de salida según el modo proporcionado. Los modos posibles son:

network    Network-related events are displayed.  
filesys    Filesystem-related events are displayed.  
pathname   Pathname-related events are displayed.  
exec       Exec and spawn events are displayed.  
diskio     Disk I/O events are displayed.  
cachehit   In addition, show cache hits.  

Ejemplo:

sudo fs_usage -e WindowsServer -f filesys

Para mostrar un pid / comando especial y excluir todos los demás, use el pid (ingrese ps aux para obtenerlo) o el nombre del comando o la aplicación

Ejemplos:

sudo fs_usage -f filesys Terminal
sudo fs_usage -f filesys 178

Una posibilidad diferente es canalizar la salida de fs_usage a grep:

sudo fs_usage -e -f filesys|grep Terminal
sudo fs_usage -e -f filesys|grep -v grep|grep write
sudo fs_usage -e|grep -v grep|grep -v WindowsServer|grep ioctl

La parte grep -v grep o grep -v WindowsServer excluye que "grep" y / o "WindowsServer" aparezcan en el resultado.

Fuentes:
desarrollador de Apple
Rentzsch

    
respondido por el klanomath 19.07.2015 - 23:02

Lea otras preguntas en las etiquetas