Cuando se inicia un script desde el símbolo del sistema, el shell generará un subproceso para ese script. Quiero mostrar esa relación entre el proceso de nivel terminal y sus hijos utilizando ps
en una salida de estilo de árbol.
¿Cómo puedo hacer esto?
Lo que he intentado hasta ahora
archivo: script.sh
#!/bin/bash
ps -f -p$1
Luego invoco el script desde la línea de comando que pasa el id del proceso del shell del terminal:
$ ./script.sh $$
Lo que quiero es algo como esto
- proceso de shell de nivel superior (terminal)
- ./script.sh
- proceso para el
ps
comando en sí
USER PID [..]
ubuntu 123 -bash
ubuntu 1234 \_ bash ./script.sh
ubuntu 12345 \_ ps auxf
lo que estoy obteniendo es:
PID TTY STAT TIME COMMAND
14492 pts/24 Ss 0:00 -bash
pstree
y no pude lograr que produjera resultados significativos, creo que no pstree $$
produjo bash--pstree
exactamente lo que estaba buscando.
ps
, entonces, ¿qué más esperas ver excepto pstree
?
pstree -p $$
? O, si desea más de la línea de comando show pstree -pa $$
,. O bien, si desea mostrar todos los procesos padre que suben, pstree -psa $$
.
pstree
?