Fala Sérgio,
será que vc não reparou que houve uma quebra de linha gerada pelo meu
cliente e-mail? Veja só o passo-a-passo:
Prompt> PING='ping teste.com (69.36.226.134): 56 data bytes'
Prompt> echo $PING
ping teste.com (69.36.226.134): 56 data bytes
Prompt> P1=`echo ${PING#*(}`
Prompt> echo $P1
69.36.226.134): 56 data bytes
Prompt> echo ${P1%)*}
69.36.226.134
Agora a linha toda sem nenhuma quebra:
Prompt> PING='PING teste.com (69.36.226.134): 56 data bytes'; P1=`echo
${PING#*(}`; echo ${P1%)*}
69.36.226.134
Abração,
Julio
:wq
2006/10/4, Sergio Nery Simoes <[EMAIL PROTECTED]>:
>
> Olá Mestre Julio,
>
> no meu sistema, o resultado usando shell puro não bateu conforme esperado:
> ----
> $ PING='ping teste.com (69.36.226.134): 56 data bytes'; P1=`echo
> ${PING#*(}`; echo ${P1%)*}
> ping teste.com (69.36.226.134
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> Este foi o Resultado...
> ----
> Ou seja ele não filtrou o conteúdo antes do parênteses. Seria alguma
> variável de ambiente?
>
> []s
> Sergio.
>
>
>
> 2006/10/3, Julio C. Neves <[EMAIL PROTECTED]>:
> >
> > Epa quero pegar uma carona na resposta do Sergio
> >
> > 2006/10/2, Sergio Nery Simoes <[EMAIL PROTECTED]>:
> > >
> > > Olá Alfredo,
> > > aproveitando o seu comentário, gostaria de alertar que nem sempre
> > solução
> > > bonita é sinônimo de desempenho.
> > > Algumas vezes, executar comandos muito poderosos e processar
> expressões
> > > regulares complexas ao invés de uma solução mais simples ("as
> > lusitanas")
> > > pode acabar onerando mais o processador.
> > > Claro que isso depende da implementação do comando em cada sistema
> (como
> > é
> > > o
> > > caso do fgrep no linux, que teoricamente deveria ser mais rápido mas
> na
> > > verdade é um script que chama o grep e por isso acaba sendo mais lento
> > que
> > > o
> > > próprio grep).
> > >
> >
> > No meu conceito isso é o maior furo dos utilitários GNU. fgrep significa
> > "fast grep" ou grep rápido e foi desenvolvido para não se preocupar em
> > resolver ERs, mas ser o mais veloz possível. E como o Sérgio acabou de
> > dizer, isso no GNU grep não é verdade. Por ser um script (escrito em
> > Shell)
> > que chama o grep, ele torna-se mais lento. Em tempo o egrep tb é um
> script
> > que chama o grep. Verifiquem!
> >
> > Por outro lado, devo concordar que as soluções simples nem sempre são
> > > elegantes, parecendo até mesmo lusitanas, quando não conhecemos o
> > > funcionamento delas no quesito desempenho. Alem disso, há construções
> > > complexas que necessitam de expressões complexas, neste caso não tem
> > jeito
> > > tornarmos a solução simples.
> > > O ideal é buscar desempenho sempre que possível.
> > >
> >
> > Concordo com a preleção, mas o problema é que só podemos ter certeza
> após
> > testes para mensurar o tempo de execução e se alguém for fazer este
> teste,
> > peço que teste tb algo em Shell puro que, teoricamente, deveria ser mais
> > veloz.
> >
> > $ PING='PING teste.com (69.36.226.134): 56 data bytes'
> > $ P1=`echo ${PING#*(}`
> > $ echo ${P1%)*}
> > 69.36.226.134
> >
> > ou, para facilitar o cópia e cola:
> >
> > $ PING='PING teste.com (69.36.226.134): 56 data bytes'; P1=`echo
> ${PING#*(}`; echo ${P1%)*}
> >
>
[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: [EMAIL PROTECTED]
---------------------------------------------------------------------
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
<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/shell-script/
<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html