Linux Centos 6,64
Estoy usando el siguiente comando para mostrar htop en la columna de comandos
comando htop -u
¿Cómo hago para que muestre solo un comando específico que elijo de la lista de comandos en ejecución?
Gracias
Respuesta1
En htop -u
el parámetro hay un nombre de usuario, no un comando.
La única opción para monitorear un comando específico es -p
, pero esto requiere un PID, por lo que el nombre del comando debe convertirse primero a un PID, lo cual pidof
será suficiente.
Si se está ejecutando más de una instancia de un comando, pidof
devuelve una lista de PID separados por espacios, pero la -p
opción toma una lista separada por comas, por lo que la pidof
salida debe convertirse:
htop -p $(pidof command | sed 's/ /,/g')
Es mejor incorporar esto a una función o script, en cuyo caso el comando será:
htop -p $(pidof "$1" | sed 's/ /,/g')
Aunque primero pienso en sed
la edición por lotes, en este caso tr
se podría usar el comando más simple:
htop -p $(pidof "$1" | tr ' ' ',')
Tenga en cuenta que los monitores del sistema GUI, como qps
y ksysguard
, pueden filtrar la salida y mostrar comandos específicos directamente (aunque el filtro basado en texto también puede seleccionar el nombre del comando si aparece en la lista de parámetros de otro comando).