shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] YAD: como matar o YAD_PID ao sair


From: Julio C. Neves
Subject: Re: [shell-script] YAD: como matar o YAD_PID ao sair
Date: Mon, 3 Oct 2016 11:29:17 -0300

Fala Marcel,
Não consegui reproduzir esse erro. Aqui rodou 100% certo.

Acho que vc só conseguirá ajuda para isso em: address@hidden 

Abcs,
Julio
@juliobash

P
róximos cursos de Shell
Cidade         Local Período
São Paulo 4Linux 05
-09/12
Dou treinamento de Shell em qualquer cidade.
Para mais detalhes, me mande um e-mail.


Em 30 de setembro de 2016 17:40, address@hidden [shell-script] <address@hidden.br> escreveu:
 

---Em address@hidden.br, <julio.neves@...> escreveu:

Fala Marcel,
estou cheio de pressa, então vou colar um script aqui para vc ver. Se não
entender, depois das 19:00h te explico.

Blz, Julio, muito obrigado. Desculpe minha latência em responder.

Rodei seu exemplo sem problemas.

Comparando seu código me ajudou a confirmar o que eu pensava: que eu estava fazendo algo muito besta. Pois bem, eu inverti aspas simples com duplas e aí o shell não expandia o $YAD_PID :P

Antes:

# --command="bash -c 'on_exit $YAD_PID' " &

After help:

--command='bash -c "kill -USR2 $YAD_PID"' &

Agora ele pegou o PID. Apesar disso, o teu código mata o YAD_PID de boa. Mas o meu, apesar de pegar o PID do yad lança:

(yad:7091): Gtk-CRITICAL **: IA__gtk_dialog_response: assertion 'GTK_IS_DIALOG (dialog)' failed

Aí fiquei pensando: tem algo a ver pelo meu código usar --notification ? Ou por não chamar de um botão, sei lá... O teu usa --form ... e funcionou certinho.

Resumindo, meu código está assim:

function on_exit()
{
echo "Recebi $1"
kill -USR2 $1
}; export -f on_exit;

menus="..." #omiti para limpeza

yad --separator="#" --notification --menu="$menus" --command='bash -c "kill -USR2 $YAD_PID"' &



reply via email to

[Prev in Thread] Current Thread [Next in Thread]