Se você iniciou algum processo no terminal (por exemplo, gedit), o ID do processo (PID) (do bash) e o ID do processo pai (PPID) (do gedit) para esses dois processos serão os mesmos. Isso pode ser visto na saída de
ps -ef
comando. Para torná-lo mais legível, vamos primeiro "canalizar" a saída para grepencontrar o PID de todos os processos "bash" em execução no momento e depois "canalizar" novamente para awk. Ele awkseleciona apenas os campos PID e nome do processo (campos 2 e 8) e os envia para a tela.
ps -ef | grep bash | awk '{print $2 ": " $8}'
O número na saída é PID. Você o usará para descobrir qual processo foi iniciado no terminal que possui esse PID. Observe que pode haver mais de uma linha de saída se você tiver mais de um terminal aberto. Agora, para encontrar os processos "filhos" (se houver) dessas sessões de terminal, podemos usar este comando:
ps -ef | awk '{if ($3 == EnterPID) print $2 ": " $8;}'
Você deve inserir o número do PID no lugar de EnterPID no último comando. Se houver mais de um PID para "bash", você deve tentar todos eles.
O último comando apenas procura a saída ps -efe pesquisa se o PID (que você encontrou no comando anterior) e o PPID são iguais para qualquer processo.
Mais informações:
homem ps
homem awk
screen,tmux,script,ssh,mce virou os painéis off, ou apenas um outro shell por exemplo digitaçãobash, ou algo nesse sentido. Pressione Ctrl + D ou digiteexitpara sair do seu shell, você verá onde termina.