Respuestas:
En Linux, puedes hacer:
htop -p `pstree -p $PID | perl -ne 'push @t, /\((\d+)\)/g; END { print join ",", @t }'`
¿Dónde $PID
está el proceso raíz? Esto funciona de la siguiente manera:
pstree
la -p
opción de listarlos con su PID.\((\d+)\)
), y los genera separados por comas.htop -p
.Para otros sistemas operativos como Mac OS, es posible que deba adaptar la expresión regular que recupera los PID.
Nota: Desafortunadamente, no es posible actualizar la lista con nuevos hijos que se generan más tarde, porque una vez que htop
se ha ejecutado, no se puede hacer nada más. Esta es una limitación de htop
(versión actual: 2.0.2).
$PID
tiene que ser el pid, pero puede obtener la identificación del nombre del proceso con pgrep
.
pstree
de homebrew:htop -p `pstree -p $PID | perl -ne 'push @t, /--- (\d+) /g; END { print join ",", @t }'`
htop -p $(ps -ef | awk -v proc=15305 '$3 == proc { cnt++;if (cnt == 1) { printf "%s",$2 } else { printf ",%s",$2 } }')
Use awk para crear una lista separada por comas de id de proceso a partir de la salida de ps -ef pasando el id del proceso padre como proc y luego pasándolo a htop -p.
$PID
puede ser el nombre del proceso, o tiene que ser el id?