Si inició algún proceso en la terminal (por ejemplo, gedit), el ID de proceso (PID) (de bash) y el ID de proceso primario (PPID) (de gedit) para estos dos procesos serán los mismos. Esto se puede ver en la salida de
ps -ef
mando. Para hacerlo más legible, primero "canalice" la salida para grep
encontrar el PID de todos los procesos "bash" que se están ejecutando actualmente y luego "canalizar" nuevamente awk
. Los awk
selecciona sólo el PID y campos de nombre de proceso (campo 2 y 8) y salidas a la pantalla.
ps -ef | grep bash | awk '{print $2 ": " $8}'
El número en la salida es PID. Lo usará para encontrar qué proceso se inició en la terminal que tiene ese PID. Tenga en cuenta que puede haber más de una línea de salida si tiene más de un terminal abierto. Ahora, para encontrar los procesos "secundarios" (si los hay) de esas sesiones de terminal, podemos usar este comando:
ps -ef | awk '{if ($3 == EnterPID) print $2 ": " $8;}'
Debe ingresar el número PID en lugar de EnterPID en el último comando. Si hay más de un PID para "bash", debe probarlos todos.
El último comando solo busca el resultado ps -ef
y busca si PID (que ha encontrado en el comando anterior) y PPID son los mismos para cualquier proceso.
Más información:
hombre ps
hombre awk
screen
,tmux
,script
,ssh
,mc
y convertido a los paneles de apagado, o simplemente otro proyectil por ejemplo, escribiendobash
, o algo a lo largo de estas líneas. Presione Ctrl + D o escribaexit
para salir de su shell, verá dónde termina.