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 <address@hidden>
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