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

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

Re: Tratar retorno de comando do prompt


From: nerobarrabas
Subject: Re: Tratar retorno de comando do prompt
Date: Sun, 04 Nov 2012 16:04:25 -0000
User-agent: eGroups-EW/0.82

Repetindo a saída do comando, sem formatação HTML:

Link '0' on board '0':Up (sync)                        ,Link '1' on board 
'0':Up (sync)

Teremos que tirar esse "espação".

Diramos

--- Em address@hidden, "nerobarrabas" <diramos@...> escreveu
>
> Grande Fredi!
> Seu comando parece funcionar sim.
> Mas só às vezes. rsrsrsrs.
> Veja os retornos:
> 
> sp7437sr032:/tmp# /usr/sbin/asterisk -r -x "khomp links show" | paste -d ':' 
> <(grep -Eo 'Link [^-]*' | sed 's/ $//') <(grep -Eo '(Up|Down)[^\|]*' | sed 
> 's/ $//') | sed ':a;N;$!ba;s/\n/,/g'
> 
> Link '0' on board '0':,Link '1' on board '0':
> 
> sp7437sr032:/tmp# /usr/sbin/asterisk -r -x "khomp links show" | paste -d ':' 
> <(grep -Eo 'Link [^-]*' | sed 's/ $//') <(grep -Eo '(Up|Down)[^\|]*' | sed 
> 's/ $//') | sed ':a;N;$!ba;s/\n/,/g'
> 
> :Up (sync)                        ,:Up (sync)
> 
> sp7437sr032:/tmp# /usr/sbin/asterisk -r -x "khomp links show" | paste -d ':' 
> <(grep -Eo 'Link [^-]*' | sed 's/ $//') <(grep -Eo '(Up|Down)[^\|]*' | sed 
> 's/ $//') | sed ':a;N;$!ba;s/\n/,/g'
> 
> Link '0' on board '0':,Link '1' on board '0':
> 
> sp7437sr032:/tmp# /usr/sbin/asterisk -r -x "khomp links show" | paste -d ':' 
> <(grep -Eo 'Link [^-]*' | sed 's/ $//') <(grep -Eo '(Up|Down)[^\|]*' | sed 
> 's/ $//') | sed ':a;N;$!ba;s/\n/,/g'
> 
> Link '0' on board '0':,Link '1' on board '0':
> 
> sp7437sr032:/tmp# /usr/sbin/asterisk -r -x "khomp links show" | paste -d ':' 
> <(grep -Eo 'Link [^-]*' | sed 's/ $//') <(grep -Eo '(Up|Down)[^\|]*' | sed 
> 's/ $//') | sed ':a;N;$!ba;s/\n/,/g'
> 
> Link '0' on board '0':Up (sync)                        ,Link '1' on board 
> '0':Up (sync)
> 
> 
> Este último é o que deveria sempre retornar. Porem, sem o espaço grande antes 
> da vírgula. Assim:
> 
> Link '0' on board '0':Up (sync), Link '1' on board '0':Up (sync)
> 
> O que será que acontece?
> 
> Outra coisa: percebi que se eu direcionar a saída prá arquivo, o arquivo 
> gerado fica com uns carecteres estranhos no início e final, que só percebo 
> quando entro para edição com o vi. Veja:
> 
> 
> ^[[0;37;40m<K>  
> ------------------------------------------------------------------------
> <K> |--------------------------- Khomp Links List ---------------------------|
> <K> |------------------------------------------------------------------------|
> <K> |------ Link '0' on board '0' ------||------ Link '1' on board '0' ------|
> <K> | Up (sync)                         || Up (sync)                         |
> <K>  ------------------------------------------------------------------------
> ^[[0m
> 
> O que poderia ser?
> Será que dá prá acertar o comando?
> Grato pela ajuda.
> 
> Diramos
> 
> --- Em address@hidden, Tiago Peczenyj <tiago.peczenyj@> escreveu
> >
> > Uia! Parece bom heim?
> > 
> > Infelizmente to com preguiça de decifrar os <div></div>  do email mas... vc
> > pode substituir o grep -Eo por uma instrução sed também, porém fica menos
> > sucinto.
> > 
> > algo como
> > 
> > sed 's/.*\(expressao\).*/\1/'
> > 
> > abraços
> > 
> > 2012/11/1 Fredi Bieging <fredi.bieging@>
> > 
> > > Assumindo que eu traduzi o formato da saída do Asterisk corretamente:
> > >
> > > paste -d ':' <(grep -Eo 'Link [^-]*' asterisk.txt | sed 's/ $//') <(grep
> > > -Eo '(Up|Down)[^\|]*' asterisk.txt | sed 's/ $//') | sed ':a;N;$!ba;s/\n/,
> > > /g'
> > >
> > > 2012/10/31 <diramos@>
> > >
> > > > **
> > > >
> > > >
> > > > <div>
> > > > <div>Pessoal,</div>
> > > > <div> </div>
> > > > <div>Tenho uma saída de comando (Asterisk), que me retorna o seguinte no
> > > > terminal:</div>
> > > > <div> </div>
> > > > <div>----------------------------------------------------------<br
> > > > />|--------------------------- Khomp Links List
> > > > ---------------------------|<br
> > > > />|----------------------------------------------------------|<br
> > > />|------
> > > > Link '0' on board '0' ------||------ Link '1' on board '0'
> > > ------------|<br
> > > > />| Up (sync) || Up (sync) |</div>
> > > > <div>|------ Link '0' on board '1' ------||------ Link '1' on board '1'
> > > > ------------|<br />| Down (failed) || Up (sync) |<br
> > > > />----------------------------------------------------------</div>
> > > > <div>Segue anexo o retorno em formato .txt.</div>
> > > > <div>Preciso filtrar esse retorno, de modo que fique assim:</div>
> > > > <div>Link '0' on board '0': Up (sync), Link '1' on board '0':Up (sync),
> > > > Link '0' on board '1':Down (failed),Link '1' on board '1':Up 
> > > > (sync)</div>
> > > > <div> </div>
> > > > <div>Ou seja, pegar somente as informações centrais e concatenar com
> > > > vírgula.</div>
> > > > <div>Detalhe complicador: o retorno é variável, pois dependendendo do
> > > > equipamento, aumenta ou diminui o numero dos links.</div>
> > > > <div> </div>
> > > > <div>Já tentei com awk, sed, grep, mas nada que chegue ao que
> > > quero.</div>
> > > > <div> </div>
> > > > <div> </div>
> > > > <div>Poderiam ajudar?</div>
> > > > <div> </div>
> > > > <div>Grato.</div>
> > > > </div>
> > > > ----------
> > > >
> > > > <K> ----------------------------------------------------------
> > > > <K> |--------------------------- Khomp Links List
> > > > ---------------------------|
> > > > <K> |----------------------------------------------------------|
> > > > <K> |------ Link '0' on board '0' ------||------ Link '1' on board '0'
> > > > ------|
> > > > <K> | Up (sync) || Up (sync) |
> > > > <K> ----------------------------------------------------------
> > > >
> > > > [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
> > >
> > >
> > >
> > 
> > 
> > -- 
> > Tiago B. Peczenyj
> > Linux User #405772
> > 
> > http://pacman.blog.br
> > 
> > 
> > [As partes desta mensagem que não continham texto foram removidas]
> >
>




reply via email to

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