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

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

Re: [shell-script] Named Pipe


From: Alysson Gonçalves de Azevedo
Subject: Re: [shell-script] Named Pipe
Date: Sat, 15 Sep 2012 09:49:05 -0300

A parte que estou falando está assim agora:

>
> temp_pipe=/tmp/${0##*/}.$$
> mkfifo $temp_pipe
> exec 3<> $temp_pipe
>
> function _menu_atualizar() {
>     echo 'menu:Novo!bash -c _menu_criar@Abrir!bash -c 
> _menu_abrir@@Fechar!quit'
> >&3
> }
> export -f _menu_atualizar
>
> yad --notification --image='tag-new' --text="Secret notes" --separator='@'
> \
>     --listen <&3 &
>
> _menu_atualizar
> trap "rm -f $temp_pipe" EXIT
>
>
e mesmo assim esse echo ai exibe o texto na tela.


Alysson Gonçalves de Azevedo - (11) 8491-7730

"É curioso como as pessoas ficam confusas quando a frase não terminam do
jeito que elas periquito."



Em 15 de setembro de 2012 09:08, Julio C. Neves <address@hidden>escreveu:

> Experimente depois de vc definir o FD 3 colocar nas saídas 1>&3.
>
> Não li o código do pastebin, mas isso deve resolver
>
> Abcs,
> Julio
>
> *
> *
>
>
>
> Em 15 de setembro de 2012 01:39, Alysson Gonçalves de Azevedo <
> address@hidden> escreveu:
>
> > **
> >
> >
> > sim sim, um é o PID do atual e o outro é o PID do último programa que foi
> > executado.
> >
> > Agora to com outra duvida...
> > No programinha que to fazendo aqui: http://pastebin.com/J1cFB8tC
> > Ele é tipo o gnote (ou tomboy), mas que depois vou aplicar criptografia
> nos
> > arquivos (isso ainda não foi feito).
> >
> > A questão é que na função _menu_atualizar, mesmo o echo estando com o
> >&3,
> > quando eu executo o programa aparece:
> >
> > user@note:~/shell$ ./secret_notes.sh
> > user@note:~/shell$ menu - Novo!bash -c _menu_criar@Abrir!bash -c
> > _menu_abrir@@Fechar!quit
> > user@note:~/shell$
> >
> > ou seja, o "menu - Novo..." continua aparecendo no terminal. Tem como
> > fechar essa saída para que ficasse sem exibir o conteúdo do echo?
> >
> > Alysson Gonçalves de Azevedo - (11) 8491-7730
> >
> > "É curioso como as pessoas ficam confusas quando a frase não terminam do
> > jeito que elas periquito."
> >
> > Em 14 de setembro de 2012 22:49, Julio C. Neves <address@hidden
> > >escreveu:
> >
> > > $ echo $0
> > > bash
> > > $ echo $$
> > > 1546
> > > $ echo $!
> > >
> > > $ sleep 5 &
> > > [1] 12358
> > > $ echo $!
> > > 12358
> > >
> > > Entendeu a diferença entre $$ e $!?
> > > Abcs,
> > > Julio
> > >
> > > *
> > > *
> > >
> > >
> > >
> > > Em 14 de setembro de 2012 22:36, Alysson Gonçalves de Azevedo <
> > > address@hidden> escreveu:
> > >
> > > > **
> > > >
> > > >
> > > > hmm, só conhecia o $!.
> > > >
> > > > vlw
> > > >
> > > > Alysson Gonçalves de Azevedo - (11) 8491-7730
> > > >
> > > > "É curioso como as pessoas ficam confusas quando a frase não terminam
> > do
> > > > jeito que elas periquito."
> > > >
> > > > Em 14 de setembro de 2012 22:21, Julio C. Neves <
> address@hidden
> > > > >escreveu:
> > > >
> > > > > Respostas:
> > > > >
> > > > >
> > > > > 1. $$ = PID do prg;
> > > > > 2. usando expansão de parâmetro tem de ser em 2 fases.
> > > > >
> > > > > Abcs,
> > > > > Julio
> > > > >
> > > > > *
> > > > > *
> > > > >
> > > > >
> > > > >
> > > > > Em 14 de setembro de 2012 22:04, Alysson Gonçalves de Azevedo <
> > > > > address@hidden> escreveu:
> > > > >
> > > > > > **
> > > > > >
> > > > > >
> > > > > > Pessoal, tava dando uma olhada num exemplo que tem nessa
> > > > > > página<
> > > > > >
> > > > >
> > > >
> > >
> >
> http://www.vivaolinux.com.br/artigo/Yad-016-Eu-quero-sempre-mais-de-ti?pagina=10
> > > > > > >e
> > > > > >
> > > > > > No primeiro código postado, tem algo assim:
> > > > > >
> > > > > > [...]
> > > > > > TEMP_PIPE=$(mktemp ${0##*/}.$$)
> > > > > > mkfifo ${TEMP_PIPE:-nadadadadsa}
> > > > > > exec 3<> ${TEMP_PIPE:-nadadadadsa}
> > > > > > trap "rm -f ${TEMP_PIPE:-nadadadadsa}" EXIT
> > > > > > [...]
> > > > > >
> > > > > > Em TEMP_PIPE=$(mktemp ${0##*/}.$$), o que significa o $$ no final
> > > ali?
> > > > > >
> > > > > > Depois, eu tentei juntar as duas primeiras linhas que citei ali,
> > > > > > porque queria que o nome do namedpipe ficasse no TEMP_PIPE e não
> em
> > > > > > ${TEMP_PIPE:-nadadadadsa}:
> > > > > >
> > > > > > TEMP_PIPE=${$(mktemp ${0##*/}.$$):-nadadadadsa}
> > > > > >
> > > > > > mas fica dando erro de substituição incorreta. Tem algum meio de
> > > fazer
> > > > o
> > > > > > mesmo sem ser assim:
> > > > > > TEMP_PIPE=$(mktemp ${0##*/}.$$)
> > > > > > TEMP_PIPE=${TEMP_PIPE:-nadadadadsa}
> > > > > >
> > > > > > E por último, ali no trap, o que ele faz é deletar o named pipe
> > > quando
> > > > o
> > > > > > programa acaba, certo?
> > > > > >
> > > > > > Obrigado.
> > > > > >
> > > > > > Alysson Gonçalves de Azevedo - (11) 8491-7730
> > > > > >
> > > > > > "É curioso como as pessoas ficam confusas quando a frase não
> > terminam
> > > > do
> > > > > > jeito que elas periquito."
> > > > > >
> > > > > > [As partes desta mensagem que não continham texto foram
> removidas]
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > > [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
> > > > > ----------------------------------------------------------
> > > > > Servidor Newsgroup da lista: news.gmane.org
> > > > > Grupo: gmane.org.user-groups.programming.shell.brazil
> > > > >
> > > > > Links do Yahoo! Grupos
> > > > >
> > > > >
> > > > >
> > > >
> > > > [As partes desta mensagem que não continham texto foram removidas]
> > > >
> > > >
> > > >
> > >
> > >
> > > [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
> > > ----------------------------------------------------------
> > > Servidor Newsgroup da lista: news.gmane.org
> > > Grupo: gmane.org.user-groups.programming.shell.brazil
> > >
> > > Links do Yahoo! Grupos
> > >
> > >
> > >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
>
> [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
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
> Links do Yahoo! Grupos
>
>
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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