Comando kill do Linux
Em sistemas operacionais do tipo Unix, o comando kill envia um sinal para um processo . Se você não especificar qual sinal enviar, por padrão, o sinal TERM será enviado, o que encerrará o processo.
Este documento descreve o comando kill do GNU / Linux , localizado em / bin / kill .
NotaQuando você executa kill na linha de comando, pode estar executando o kill interno do seu shell, o que pode ter opções ligeiramente diferentes. Para obter informações sobre a versão interna do kill no shell bash , consulte o comando interno do bash “kill” .
Descrição
Para enviar qualquer sinal para um processo a partir da linha de comando, use kill .
Para listar todos os sinais disponíveis, use a opção -l (L minúsculo). Também fornecemos uma lista de sinais do Linux para você usar como referência rápida.
Os sinais usados com frequência incluem HUP , INT , KILL , STOP , CONT e 0 .
Os sinais podem ser especificados de três maneiras:
- por número (por exemplo, -9 )
- com o prefixo “SIG” (por exemplo, -SIGKILL )
- sem prefixo “SIG” (por exemplo, -KILL ).
Especificando o PID
Para especificar qual processo deve receber o sinal, use seu PID numérico (ID do processo). Para ver uma lista dos processos em execução, você pode usar o comando ps .
Valores PID negativos podem ser usados para indicar o ID do grupo de processos, em vez do ID do processo. Veja a coluna PGID na saída do comando ps , por exemplo, com o comando ps -eo user, pid, pgid ,. Se você especificar um ID do grupo de processos como o destino de um comando kill , todos os processos no grupo receberão o sinal.
Um PID de -1 é especial. Indica todos os processos, exceto dois: o próprio processo de interrupção e init (PID 1), que é o processo pai de todos os processos no sistema. Especificar -1 como destino enviará o sinal para todos os processos, exceto esses dois.
Sintaxe
Encerrar processo (s):
matar pid ...
Envie um sinal para o (s) processo (s):
matar { - sinal | -s sinal } pid ...
Listar os sinais disponíveis:
mata { -l | --list [ = sinal ] | -L --table }
Opções
Opção | Descrição |
---|---|
– sinal sinal -s | O nome, nome abreviado ou número do sinal a ser enviado, precedido por um traço. Por exemplo, -SIGTERM , -TERM ou -15 . Para visualizar uma lista de sinais disponíveis, use as opções -l ou -L (veja abaixo) ou consulte nossa lista de sinais do Linux . |
pid | Um ID numérico do processo. Se você não tiver certeza de qual é o processo PID, use o comando ps para listá-lo, por exemplo, ps -aux . |
-l , –list [ = sinal ] | Listar os nomes de sinais disponíveis. Com -l ou –list , lista todos os nomes de sinais. Com –list = sinal , converte um número em seu nome de sinal. |
-L , –table | Liste os nomes e números de sinais disponíveis em uma tabela. |
Exemplos
Nesses exemplos, se um comando estiver listado como / bin / kill , ele deverá ser executado com essa versão do comando kill . Outros comandos podem ser executados com o kill interno .
matar -9 -1
Mate todos os processos que o usuário tem permissão para matar, exceto o processo raiz (PID 1) e o próprio processo de morte .
kill -l
Listar todos os nomes de sinais disponíveis. Saída de amostra:
HUP INT SAIR DA ARMADILHA ABRT BUS BARRA FPE USR1 SEGV USR2 PRAZO DE ALRM DO TUBO STKFLT CHLD CONT PARAR TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF SISTEMA PWR POLL
/ bin / kill -l
Igual ao comando anterior.
/ bin / kill --list
O mesmo que os dois comandos anteriores.
/ bin / kill -L
Liste os sinais disponíveis e seus números em formato de tabela. Saída de amostra:
1 HUP 2 INT 3 SAIR 4 ILL 5 ARMADILHA 6 ABRT 7 ÔNIBUS 8 FPE 9 MATANÇA 10 USR1 11 SEGV 12 USR2 13 TUBO 14 ALRM 15 TERM 16 STKFLT 17 CHLD 18 CONT 19 PARADA 20 TSTP 21 TTIN 22 TTOU 23 URG 24 XCPU 25 XFSZ 26 VTALRM 27 PROF 28 GUINCHO 29 POLL 30 PWR 31 SYS
/ bin / kill --table
Igual ao comando anterior.
/ bin / kill --list = 11
Traduza o sinal número 11 para o seu nome de sinal. Resultado:
SEGV
matar 123 4567
Envia o sinal padrão ( KILL , número do sinal 9 ) para os processos com os IDs 123 e 4567 . Esses processos são encerrados.
Comandos relacionados
fusor – identifique processos usando arquivos ou soquetes.
killall – mata processos por nome.
ps – lista informações sobre processos em execução.