Como eu mato um processo dado seu “comando”?

1

Eu tenho um processo chamado "P1", agora o jeito que eu mato o processo é:

$ ps aux | grep "P1"
" Now it returns two processes related to "P1": one is the actual P1 process I want to kill, the other one is the "grep P1" which I don't care.
$ kill -9 <P1 pid>

No entanto, desejo combinar os dois processos em um. Atualmente, não consegui encontrar uma maneira eficiente de fazer isso, principalmente porque tenho que procurar pela saída do primeiro comando. Qualquer bom método?

    
por return 0 08.02.2016 / 23:19

2 respostas

2

Você pode usar pgrep com o sinalizador -x :

kill -9 $(pgrep -x P1)

ou melhor, com pkill você pode fazer isso:

pkill -9 -x P1

com BSD pkill :

pkill 9 -x P1
    
por 08.02.2016 / 23:28
0

Você pode usar killall(1) (pelo menos aqui no Fedora Linux). Tem uma série de opções.

Pessoalmente, eu uso quase que exclusivamente quando sei que existe apenas um processo com o nome dado.

    
por 09.02.2016 / 02:45

Tags