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

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

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


From: Miranda
Subject: Re: RES: RES: RES: RES: RES: RES: [shell-script] re: Crt+c
Date: Tue, 28 Sep 2004 17:06:07 -0300
User-agent: KMail/1.5

verdade.
mais uma pulga atrás da orelha    :o)

On Tuesday 28 September 2004 14:41, Julio Cezar Neves - DATAPREVRJ wrote:
> 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
>
>
>
>
>
>
>
>
> ---------------------------------------------------------------------
> 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]