Obrigado Julio,

Mas o trap continua não pegando o signal 9. Na verdade a sintaxe que eu 
tinha usado deve ser uma alternativa válida, o resultado foi o mesmo: o 
Script para mas não passa pelo trap.

Parece até que o kill -9 é "forte demais" e nem deixa tempo para nada... 
Isso faz sentido?

O eclipse só manda o kill normal e está funcionando, mas estou 
preparando o kill -9 para "aqueles dias" porque como é uma ferramenta de 
desenvolvimento tudo que tem de errado acaba aparecendo...

Obrigado pela dica do read em vez do loop com espera :) já precisei 
disso outras vezes.

Alain

Julio C. Neves escreveu:
> Fala Alain,
> o cmd killall é diferente do kill e, no seu exemplo, vc usou a sintaxe do
> kill. No killall, para se especificar o sinal, vc deve usar a opção -s,
> ficando:
> 
> $ killall -s 9 script
> 
> Porém, tenho outras observações:
> - Vc não deve ter prestado atenção, mas o Papo de Botequim diz pra só usar o
> sinal -9 em último caso. Desaconselho veementemente seu uso;
> 
> - Vc montou um trap para os sinais 1 2 3 9 15. O trap para o sinal 9 não
> funciona e esse é um dos motivos de ter escrito o item acima;
> 
> - Vc fez:
> while [ 1 ]; do
> sleep 1
> done
> isso é um loop perpétuo. Ficaria melhor se vc fizesse:
> trap "set -x; sudo killall openocd3; exit 0" 0 1 2 3 15
> read -pn1 "Tecle algo para encerrar..."
> 
> Abraços,
> Julio
> Cursos de Shell e Zenity em 2 fins de semana?
> - Em DF ligue (61) 3223-3000 Curso de zenity 09-10/01;
> - Turmas fechadas em outras cidades ligue (21) 8112-9988.
> 
> 
> 2009/12/14 Alain Mouette <[email protected]>
> 
>>
>> Com a ajuda do tutorial no papo de botequim, consegui fazer um script
>> que encerra com sudo o programa em BG :)
>>
>> Porém
>> killall script
>> funciona, mas
>> killall -9 script
>> não funciona... isso parece u mistério para mim
>>
>> Aqui está meu script (meu sudo está configurado sem senha)
>>
>> #!/bin/bash
>> trap "set -x; sudo killall openocd3; exit 0" 1 2 3 9 15
>> sudo /home/alain/projetos/openocd/openocd3 $* &
>> while [ 1 ]; do
>> sleep 1
>> done
>>
>> Alguem tem uma explicação???
>>
>> abraços,
>> Alain
>>  

Responder a