Encontre um processo pelo nome e mate-o

1

Então, eu quero mandar um kill para um processo, eu sei que é o nome

ps -ef | grep '_rails master'
root      2388     1  0 19:46 ?        00:00:04 unicorn_rails master -c /web/hero/config/unicorn.rb -E production -D                   
root      2582  2172  0 20:28 pts/0    00:00:00 grep --color=auto _rails master

É o unicorn_rails master [..] como faço para matá-lo?

Eu tentei até agora: sed e expr . Mas não posso passar isso como param para matar

    
por Fabiano Soriani 03.02.2011 / 23:33

3 respostas

9

Existe um comando mais direto chamado pkill. O uso é o seguinte:

$ pkill "process name here"
    
por 03.02.2011 / 23:36
1

Você pode o comando:

$ sudo kill 'pidof process_name'.

Você também pode usar:

$ sudo killall process_name

Se você quiser usar o grep, você pode tentar:

$ ps -ef | grep '_rails master' | grep -v grep | awk '{print $3}' | sudo kill
    
por 03.02.2011 / 23:35
1

Você pode usar o seguinte:

ps -ef | grep [u]nicorn_rails | awk '{print $2}' | sudo xargs kill

Note que o [] em 'grep [u] nicorn_rails' evita que você corresponda ao comando grep na árvore ps.

    
por 04.02.2011 / 00:57