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

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

RES: RES: RES: RES: RES: RES: [shell-script] re: Crt+c


From: Julio Cezar Neves - DATAPREVRJ
Subject: RES: RES: RES: RES: RES: RES: [shell-script] re: Crt+c
Date: Tue, 28 Sep 2004 14:41:17 -0300

Miranda, teste com outro sinal, o 20 eu não consigo entender o [não]
funcionamento, não funciona nem no prompt. Troque 20 por 2 e observe a
herança.

[ ]s,
Julio Cezar Neves
- Gerente do Programa de Software Livre -
Tel:+55 21 2528-7070 / +55 21 8112-9988
Fax: +55 21 2528-7646
mailto:address@hidden


| -----Mensagem original-----
| De: Miranda [mailto:address@hidden]
| Enviada em: terça-feira, 28 de setembro de 2004 09:17
| Para: address@hidden
| Assunto: Re: RES: RES: RES: RES: RES: [shell-script] re: Crt+c
| 
| 
| OK
| Mas você concluiu que o 
| o processo filho herda o trap ?
| Pois nos meus testes não herdou ...
| O que fiz foi desmembrar o programa tb
| e uma pequena alteração
| Caso você possa , faça os testes aí 
|  x.sh continha:
| 
| trap ""  20
| echo $$
| echo "em x : `trap -p`"
| /tmp/y.sh
| 
| e /tmp/y.sh continha :
| 
| echo "em y : `trap -p`"
| while true
| do
|   echo -n .
|   sleep 1
| done
| 
| ao executar x.sh
| obtive :
| 
| 15012
| em x : trap -- '' TSTP
| em y :
| ........
| 
| ao pressionar CTRL-Z os pontinhos pararam de aparecer
| 
| em outro terminal descobri o PID do processo sleep
| executei kill -SIGCONT PID  e os pontinhos recomeçaram
| 
| concluí , então
| havia na shell de chamada de x.sh uma trap definida para o signal 20
| confirmado com o comando trap -p
| em y.sh não havia
| o que se confirmou quando pressionei CTRL-Z  , esse foi 
| suspenso e continuei o 
| processo
| mandando um SIGCONT
| 
| 
| On Monday 27 September 2004 21:05, Julio Cezar Neves - 
| DATAPREVRJ wrote:
| > Olha aí Miranda,
| >
| > Prompt> cat Prg1
| > trap "echo recebi sinal 2" 2
| > ./Prg2
| > Prompt> cat Prg2
| > sleep 10
| > Prompt> ./Prg1
| > òrecebi sinal 2
| >
| > E olha só isso tb:
| >
| > Prompt> cat Prg1
| > trap "echo $$" 2
| > ./Prg2
| > Prompt> ./Prg1
| > ò3190
| > Prompt> cat Prg1
| > trap 'echo $$' 2
| > g
| > Prompt> ./Prg1
| > ò3195
| >
| > Isto é, se os cmds do trap estiverem entre aspas, os cmds 
| são resolvidos no
| > momento em que o trap é lido, caso esteja entre apóstrofos, 
| os cmds são
| > resolvidos qdo o sinal é recebido.
| >
| > [ ]s,
| > Julio Cezar Neves
| > - Gerente do Programa de Software Livre -
| > Tel:+55 21 2528-7070 / +55 21 8112-9988
| > Fax: +55 21 2528-7646
| > mailto:address@hidden
| >
| > | -----Mensagem original-----
| > | De: Miranda [mailto:address@hidden]
| > | Enviada em: segunda-feira, 27 de setembro de 2004 13:49
| > | Para: address@hidden
| > | Assunto: Re: RES: RES: RES: RES: [shell-script] re: Crt+c
| > |
| > |
| > | bem , não foi o que entendi lendo as linhas abaixo
| > | no manual do trap
| > |
| > | Trapped  signals
| > |               are reset to their original values in a child
| > | process when it is
| > |               created.
| > |
| > | On Monday 27 September 2004 12:18, Julio Cezar Neves -
| > |
| > | DATAPREVRJ wrote:
| > | > | -----Mensagem original-----
| > | > | De: Miranda [mailto:address@hidden]
| > | > | Enviada em: segunda-feira, 27 de setembro de 2004 11:59
| > | > | Para: address@hidden
| > | > | Assunto: Re: RES: RES: RES: [shell-script] re: Crt+c
| > | > |
| > | > |
| > | > | entendi
| > | > | a diferença
| > | > | eu disparei uma shell
| > | > | x.sh
| > | > | conteudo de x.sh :
| > | > |
| > | > | #trap ""  20
| > | > |  echo $$
| > | > |  while true
| > | > |  do
| > | > |    echo -n .
| > | > |    sleep 1
| > | > |  done
| > | > |
| > | > | do prompt como você fez
| > | > | tentei aqui e tb não deu certo
| > | > | não serveria para uma shell filha ?
| > | > | seria isso ?
| > | > | será que tem que "exportar"   o trap  ?
| > | >
| > | > Não, o trap é auto exportado para qq instância de shell que
| > |
| > | vc dispare. Há
| > |
| > | > muito tempo que pesquiso estes sinais, mas nem no código do
| > |
| > | bash isso está
| > |
| > | > muito claro. O que faço é disparar (com o cmd source ou .)
| > |
| > | um scriptiznho
| > |
| > | > que "liga" todos os sinais e esperar que um deles ocorra.
| > | >
| > | > for ((i=0; i<64; ++i))
| > | > do
| > | >     trap "echo recebi sinal $i" $i
| > | > done
| > | >
| > | > | On Monday 27 September 2004 11:34, Julio Cezar Neves -
| > | > |
| > | > | DATAPREVRJ wrote:
| > | > | > Aê Miranda,
| > | > | > Prompt> stty -a | grep susp
| > | > | > eol2 = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt =
| > | > |
| > | > | ^R; werase = ^W;
| > | > |
| > | > | > [ ]s,
| > | > | > Julio Cezar Neves
| > | > | > - Gerente do Programa de Software Livre -
| > | > | > Tel:+55 21 2528-7070 / +55 21 8112-9988
| > | > | > Fax: +55 21 2528-7646
| > | > | > mailto:address@hidden
| > | > | >
| > | > | > | -----Mensagem original-----
| > | > | > | De: Miranda [mailto:address@hidden]
| > | > | > | Enviada em: segunda-feira, 27 de setembro de 2004 11:28
| > | > | > | Para: address@hidden
| > | > | > | Assunto: Re: RES: RES: [shell-script] re: Crt+c
| > | > | > |
| > | > | > |
| > | > | > | veja que combinação de teclas está gerando o SUSP
| > | > | > | stty -a | grep susp
| > | > | > |
| > | > | > | On Monday 27 September 2004 11:14, Julio Cezar Neves -
| > | > | > |
| > | > | > | DATAPREVRJ wrote:
| > | > | > | > Aqui tb é RH 9 e não funcionou:
| > | > | > | > Prompt> trap ""  20
| > | > | > | > Prompt> echo $$
| > | > | > | > 2564
| > | > | > | > Prompt> while true
| > | > | > | >
| > | > | > | > > do
| > | > | > | > >   echo -n .
| > | > | > | > >   sleep 1
| > | > | > | > > done
| > | > | > | >
| > | > | > | > ....ò  # Aqui mandei um CTRL+Z
| > | > | > | > [1]+  Stopped                 sleep 1
| > | > | > | >
| > | > | > | > [ ]s,
| > | > | > | > Julio Cezar Neves
| > | > | > | > - Programa de Software Livre -
| > | > | > | > Tel:+55 21 2528-7070 / +55 21 8112-9988
| > | > | > | > Fax: +55 21 2528-7646
| > | > | > | > mailto:address@hidden
| > | > | > | >
| > | > | > | > | -----Mensagem original-----
| > | > | > | > | De: Miranda [mailto:address@hidden]
| > | > | > | > | Enviada em: segunda-feira, 27 de setembro de 
| 2004 10:55
| > | > | > | > | Para: address@hidden
| > | > | > | > | Assunto: Re: RES: [shell-script] re: Crt+c
| > | > | > | > |
| > | > | > | > |
| > | > | > | > | Fiz um teste aqui no meu Red Hat 9.0 e funcionou
| > | > | > | > | com o 20
| > | > | > | > | trata-se do SIGTSTP
| > | > | > | > | (descobri com o kill -l )
| > | > | > | > | juntamente com o stty -a
| > | > | > | > | stty -a me mostrou que o CTRL-Z é disparado como SUSP
| > | > | > | > | que é um sinal que pára o processo
| > | > | > | > | através de pressionamento de tecla
| > | > | > | > | por isso confundi com o 19
| > | > | > | > | que é
| > | > | > | > | SIGSTOP
| > | > | > | > | o script que usei para teste foi esse aqui
| > | > | > | > | (tecle CTRL-Z e veja o que acontece )
| > | > | > | > | ( o comando fg coloca o programa rodando novamente)
| > | > | > | > | (depois descomente a linha do trap e teste novamente )
| > | > | > | > |
| > | > | > | > |
| > | > | > | > |
| > | > | > | > | On Monday 27 September 2004 10:37, Julio Cezar Neves -
| > | > | > | > |
| > | > | > | > | DATAPREVRJ wrote:
| > | > | > | > | > Rafael e Miranda,
| > | > | > | > | > o CTRL+Z não gera sinal. Para vc saber os sinais
| > | > | > | > |
| > | > | > | > | monitoraveis faça um trap
| > | > | > | > |
| > | > | > | > | > -l. Até agora, de interessante, conheço somente os
| > | > | > |
| > | > | > | seguintes sinais:
| > | > | > | > | > 0 - fim normal
| > | > | > | > | > 2 - CTRL+C
| > | > | > | > | > 3 - CTRL+\ (em alguns sabores causa uma
| > |
| > | interrupção seguida
| > |
| > | > | > | > | de core dump)
| > | > | > | > |
| > | > | > | > | > 17 - Fim de um processo filho (teste ligar 
| este trap e
| > | > | > | > |
| > | > | > | > | fazer sleep 3&)
| > | > | > | > |
| > | > | > | > | > 28 - Mudança no tamanho da janela (é com esse
| > |
| > | sinal que se
| > |
| > | > | > | > | faz o prog que
| > | > | > | > |
| > | > | > | > | > põe o tamanho da janela no centro da tela qdo
| > |
| > | vc altera o
| > |
| > | > | > | > | seu tamanho), é o
| > | > | > | > |
| > | > | > | > | > shell orientado a eventos :)
| > | > | > | > | >
| > | > | > | > | > Se descobrirem outros que sirvam por favor 
| me avisem.
| > | > | > | > | >
| > | > | > | > | > [ ]s,
| > | > | > | > | > Julio Cezar Neves
| > | > | > | > | > - Gerente do Programa de Software Livre -
| > | > | > | > | > Tel:+55 21 2528-7070 / +55 21 8112-9988
| > | > | > | > | > Fax: +55 21 2528-7646
| > | > | > | > | > mailto:address@hidden
| > | > | > | > | >
| > | > | > | > | > | -----Mensagem original-----
| > | > | > | > | > | De: Miranda [mailto:address@hidden]
| > | > | > | > | > | Enviada em: segunda-feira, 27 de setembro de
| > |
| > | 2004 09:20
| > |
| > | > | > | > | > | Para: address@hidden
| > | > | > | > | > | Assunto: Re: [shell-script] re: Crt+c
| > | > | > | > | > |
| > | > | > | > | > |
| > | > | > | > | > |
| > | > | > | > | > | se não estou enganando
| > | > | > | > | > | você quer mascarar o sinal 19
| > | > | > | > | > | tenta ai
| > | > | > | > | > |
| > | > | > | > | > | On Saturday 25 September 2004 11:29, rafael
| > |
| > | stell wrote:
| > | > | > | > | > | > Olá Julio neves,
| > | > | > | > | > | >
| > | > | > | > | > | > Teria como abortar tb o Crt+z. Já 
| abusando sabe onde
| > | > | > | > | > |
| > | > | > | > | > | consigo mais info
| > | > | > | > | > |
| > | > | > | > | > | > sobre o comando trap estou apanhando 
| para o google.
| > | > | > | > | > | >
| > | > | > | > | > | >
| > | > | > | > | > | > Obrigado : :  - )
| > | > | > | > | > | >
| > | > | > | > | > | >
| > | > | > | > | > | > ---------------------------------
| > | > | > | > | > | > Yahoo! Messenger 6.0 - jogos, emoticons
| > |
| > | sonoros e muita
| > |
| > | > | > | > | > | diversão. Instale
| > | > | > | > | > |
| > | > | > | > | > | > agora!
| > | > | > | > | > | >
| > | > | > | > | > | > [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:
| > |
| > | address@hidden
| > |
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > | > | > Esta lista é moderada de acordo com o 
| previsto em
| > | > | > | > | > | > http://www.listas-discussao.cjb.net
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > | > | > Links do Yahoo! Grupos
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > | > | 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:
| > |
| > | address@hidden
| > |
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > | > | Esta lista é moderada de acordo com o previsto em
| > | > | > | > | >
| > | > | > | > | > http://www.listas-discussao.cjb.net
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > | > Links do Yahoo! Grupos
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > | > 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: 
| address@hidden
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > | > Esta lista é moderada de acordo com o previsto em
| > | > | > | > | > http://www.listas-discussao.cjb.net
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > | > Links do Yahoo! Grupos
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > | 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: 
| address@hidden
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > | Esta lista é moderada de acordo com o previsto em
| > | > | > | >
| > | > | > | > http://www.listas-discussao.cjb.net
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > Links do Yahoo! Grupos
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > 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: address@hidden
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > Esta lista é moderada de acordo com o previsto em
| > | > | > | > http://www.listas-discussao.cjb.net
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | > Links do Yahoo! Grupos
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | 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: address@hidden
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > | Esta lista é moderada de acordo com o previsto em
| > | > | >
| > | > | > http://www.listas-discussao.cjb.net
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > Links do Yahoo! Grupos
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > 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: address@hidden
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > Esta lista é moderada de acordo com o previsto em
| > | > | > http://www.listas-discussao.cjb.net
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | > Links do Yahoo! Grupos
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | 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: address@hidden
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > | Esta lista é moderada de acordo com o previsto em
| > | >
| > | > http://www.listas-discussao.cjb.net
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > Links do Yahoo! Grupos
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > 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: address@hidden
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > Esta lista é moderada de acordo com o previsto em
| > | > http://www.listas-discussao.cjb.net
| > |
| > | 
| ---------------------------------------------------------------------
| > |
| > | > Links do Yahoo! Grupos
| > |
| > | 
| ---------------------------------------------------------------------
| > | 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: address@hidden
| > | 
| ---------------------------------------------------------------------
| > | Esta lista é moderada de acordo com o previsto em
| >
| > http://www.listas-discussao.cjb.net
| > 
| ---------------------------------------------------------------------
| >
| > Links do Yahoo! Grupos
| >
| >
| >
| >
| >
| >
| >
| >
| > 
| ---------------------------------------------------------------------
| > 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: address@hidden
| > 
| ---------------------------------------------------------------------
| > Esta lista é moderada de acordo com o previsto em
| > http://www.listas-discussao.cjb.net
| > 
| ---------------------------------------------------------------------
| >
| > Links do Yahoo! Grupos
| >
| >
| >
| 
| 
| 
| ---------------------------------------------------------------------
| 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: address@hidden
| ---------------------------------------------------------------------
| Esta lista é moderada de acordo com o previsto em 
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
 
Links do Yahoo! Grupos




 
 


reply via email to

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