Como matar um processo - kill, killall, pkill e xkill
Existem várias maneiras de matar efetivamente um processo (trabalho). Como por exemplo: matar pelo nome ou por parte do nome, matar o processo colocando o ponteiro do mouse sobre a janela e clicando etc. Neste artigo vamos ver apenas 4 maneiras de matar um processo sendo que não vamos esgotar o uso dos comandos citados.
Parte 2: O killall e o pkill
2. killall - Matar processo informando o nome
Muito fácil. Não é preciso especificar o PID, é só informar o nome do processo. Mas se mais de um processo estiver rodando com o nome informado, todos serão terminados.
No exemplo do firefox o procedimento seria:
killall -9 firefox
Algumas opções úteis são:
a) -e, --exact
Procura o nome exato (verifica apenas os 15 primeiros caracteres).
b) -I, --ignore-case
Não diferencia caixa alta e caixa baixa.
c) -u, --user
Mata apenas processos de um determinado usuário.
3. pkill - Envia sinal baseando-se no nome do processo
Envia um sinal para quaisquer processos informando-se todo o nome ou apenas parte do nome deles. Não é preciso especificar o PID dos processos para enviar o sinal. A parte do nome ou o nome todo deve estar especificado nos 15 primeiros caracteres para ser comparado. Tendo um processo cyclope rodando um exemplo seria:
a) Verificar os processos que serão afetados pelo pkill usando o comando:
pgrep -l cyclope
14801 cyclope-server
14852 cyclope-client
14853 cyclope-data
b) Enviar o sinal:
pkill cyclope
Pronto, processo(s) morto(s).
Vamos agora ao último método deste artigo.
Muito fácil. Não é preciso especificar o PID, é só informar o nome do processo. Mas se mais de um processo estiver rodando com o nome informado, todos serão terminados.
No exemplo do firefox o procedimento seria:
killall -9 firefox
Algumas opções úteis são:
a) -e, --exact
Procura o nome exato (verifica apenas os 15 primeiros caracteres).
b) -I, --ignore-case
Não diferencia caixa alta e caixa baixa.
c) -u, --user
Mata apenas processos de um determinado usuário.
3. pkill - Envia sinal baseando-se no nome do processo
Envia um sinal para quaisquer processos informando-se todo o nome ou apenas parte do nome deles. Não é preciso especificar o PID dos processos para enviar o sinal. A parte do nome ou o nome todo deve estar especificado nos 15 primeiros caracteres para ser comparado. Tendo um processo cyclope rodando um exemplo seria:
a) Verificar os processos que serão afetados pelo pkill usando o comando:
pgrep -l cyclope
14801 cyclope-server
14852 cyclope-client
14853 cyclope-data
b) Enviar o sinal:
pkill cyclope
Pronto, processo(s) morto(s).
Vamos agora ao último método deste artigo.
Quanto ao xkill, na maioria das distribuições as teclas Ctrl+Alt+Esc são um atalho para ele.