sinalizadores de decodificação para o comando Kill

6

Eu vi este comando em um livro para o shell do Scripting Linux

$ kill -HUP 1234 >killout.txt 2>killerr.txt

Eu sei o que o comando faz, mas não consigo entender os sinalizadores -HUP

    
por ArunMKumar 05.05.2013 / 19:35

2 respostas

6

No Linux, tente man 7 signal .

kill -HUP 1234 significa "enviar o sinal SIGHUP (1) para processar 1234", por isso é equivalente a kill -1 1234 . O sinal padrão que é enviado por kill é SIGTERM (15), então kill 1234 é equivalente a kill -TERM 1234 ou kill -15 1234 .

    
por 05.05.2013 / 20:24
4

-HUP não são os três sinalizadores H , U , P como na sintaxe de opção de uma única letra. Por razões históricas, o comando kill recebe um nome de sinal ou número de sinal opcional precedido por um traço ( - ).

kill -1 1234
kill -HUP 1234

(Ao contrário de kill 1 1234 , que envia o sinal padrão (SIGTERM) para os processos 1 e 1234.)

Sua página man provavelmente lista algo assim:

kill [ -signal | -s signal ] pid ...

Esse -signal significa que você pode usar um traço seguido por uma designação de sinal (que pode ser um nome ou um número). Alternativamente, você pode usar a opção -s seguida de um nome de sinal; estas são duas sintaxes diferentes com o mesmo significado.

kill -l lista os nomes de sinal disponíveis e os números correspondentes.

A maioria dos sinais tem um significado predefinido com base em quem os envia quando e como os processos são supostos e capazes de reagir a eles.

    
por 07.05.2013 / 03:52