pkill nunca se mata, assim como pgrep nerver se lista; pkill faz sair depois de matar cada processo que corresponde aos critérios, exceto ele mesmo. pkill mata seus pais se eles corresponderem aos critérios, mas se o pai for um shell a menos que você use um sinal não identificável (geralmente apenas -9 aka - [SIG] KILL) o shell normalmente o ignora. Se incluir o seu sshd que realmente vai matar a sua sessão, e com ela o seu shell e (a maioria?) Outros processos, o que geralmente é indesejado.
Você pode querer usar pgrep para encontrar os processses, talvez com -l ou -lf , e fazer verificações adicionais antes de kill ns.