Em 8/7/2010 02:13, Julio C. Neves escreveu: > Fala Rogério, > o seu problema é que vc não está no seu shell inicial e sim em um filho > deste que foi disparado para atender ao seu script. Se não fosse assim, o > seu shell morreria sempre que um script terminasse. > > As únicas formas de fazer isso que posso imaginar, são: > - pegar o PID do bash via um ps sem argumentos e dar-lhe um kill > - executar o seu script pelo cmd source. Isso se faz colocando um ponto à > frente do nome do script. Suponha que o nome seja scr.sh. Vc deve executá-lo > assim: > . ./scr.sh > > Não esqueça de montar um trap na 1a. linha do script, mais ou menos assim: > > trap "exit 1" {1..64} > > Isso é para derrubar o shell se ele receber algum sinal. Se vc não fizer > isso e o operador der um ctrl+c, p.ex., seus dados permanecerão na partição > a disposição de qq curioso e isso não é muito seguro. > > Abraços, > Julio > Cursos de Shell e Zenity em 2 fins de semana? > - SE turma de Shell/Zenity em 26/07 - clemis...@gmail.com > - SP turma de Shell em 14/08 - www.4Linux.com.br > - Turmas fechadas em outras cidades ligue (21)8112-9988. > > > Em 7 de julho de 2010 18:09, Rogério Tomassoni > <sistem...@furacao.com.br>escreveu: > > >> >> Alguem, saberia uma solução para finalizar um konsole do kde após um >> script ser finalizado? >> Exemplo: >> Tenho um script que realiza uma conexão via ssh e abre um aplicativo em >> terminal. (Nesse ponto, ainda esta dentro de uma condição no meu script, >> e o konsole aberto). >> Ao finalizar a conexão, quero que feche o konsole que foi aberto. (Após >> finalizar a conexao ssh, o script sai da condição e executa exit 0, mas >> cai no konsole). >> >> Hoje, o que acontece, que a conexão é finalizada, o aplicativo fecha, >> claro, mas o konsole fica aberto. >> >> >> >> > > [As partes desta mensagem que não continham texto foram removidas] > > > > ------------------------------------ > > --------------------------------------------------------------------- > Esta lista não admite a abordagem de outras liguagens de programação, como > perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio > aviso. > --------------------------------------------------------------------- > Sair da lista: shell-script-unsubscr...@yahoogrupos.com.br > --------------------------------------------------------------------- > Esta lista é moderada de acordo com o previsto em > http://www.listas-discussao.cjb.net > --------------------------------------------------------------------- > Servidor Newsgroup da lista: news.gmane.org > Grupo: gmane.org.user-groups.programming.shell.brazil > > Links do Yahoo! Grupos > > > > > Pessoal consegui, nada como um dia após outro dia. Seguinte usei o DCOP mesmo para finalizar o shell atual/corrente, fiz assim:
No final do meu script inseri as seguintes linhas: # Pega o PID do shell corrente atraves do dcop pidShellCurrente=$(echo "$KONSOLE_DCOP" | cut -d- -f2 | cut -d, -f1) # Mata o processo com PID do konsole kill -9 $pidShellCurrente Funcionou perfeitamente. Agradeço a atenção de todos. Até breve.