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

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

Re: [shell-script] Achar uma coluna


From: SuSE List
Subject: Re: [shell-script] Achar uma coluna
Date: Tue, 15 Mar 2005 14:46:15 -0300
User-agent: Mozilla Thunderbird 1.0 (Windows/20041206)

Alain,

Da pra fazer isso, usando " " como caracter separador de campos....em 
função disso cada campo tem um "espaço", o reach seria o setimo 
campo....com o que vc mandou fiz o seguinte teste:
Também atentando que possa ter mais de um espaco em branco, seja no 
inicio ou no fim da coluna.....veja:

msp01:/home/vinicius # cat texto.txt
+ntp1.pucpr.br   tick.ucla.edu    2 u  716 1024  377   237.626    19.915 
11.058
  paulo.hiway.com Tick.UH.EDU      2 u  159 1024  377  385.982   77.252  
427.978

msp01:/home/vinicius # cat texto.txt | awk -F" " '{print 
$7"\t"$8"\t"$9"\t"$10}'
377     237.626 19.915  11.058
377     385.982 77.252  427.978

msp01:/home/vinicius # cat texto.txt | awk -F" " '{print $7" "$8" "$9" 
"$10}'
377 237.626 19.915 11.058
377 385.982 77.252 427.978

ou ainda, imprimindo também a primeira coluna também:

msp01:/home/vinicius # cat texto.txt | awk -F" " '{print $1" "$7" "$8" 
"$9" "$10}'
+ntp1.pucpr.br 377 237.626 19.915 11.058
paulo.hiway.com 377 385.982 77.252 427.978

msp01:/home/vinicius # cat texto.txt | awk -F" " '{print 
$1"\t"$7"\t"$8"\t"$9"\t"$10}'
+ntp1.pucpr.br  377     237.626 19.915  11.058
paulo.hiway.com 377     385.982 77.252  427.978


O parametro "\t" entre aspas é o caracter de tabulação no awk....
é isso que vc precisa?

[]s

Vinny

Alain wrote:

> Eu não quis entupir a lista com listagens, mas aqui vai uma nescessária.
> O comando retorna:
>
> [root@servnet1 root]# ntpq -p
>       remote           refid      st t when poll reach   delay   offset
>   jitter
> ==============================================================================
> +ntp1.pucpr.br   tick.ucla.edu    2 u  716 1024  377  237.626   19.915
> 11.058
>   paulo.hiway.com Tick.UH.EDU      2 u  159 1024  377  385.982   77.252
> 427.978
>
> A primeira linha serve de título, eu preciso testar aquele 377 embaixo
> do reach. Só que, vendo listas semelhantes na lista do ntp, acontece o
> seguinte: 1) na segunda coluna (pulando o primeiro caracter) e na
> terceira podem existir " ", e 2) a largura e quantidade das colunas não
> é sempre exata mas varia com as versões.
>
> Portanto eu preciso achar a posição da palavra "reach" na primeira linha
> para recortar as linhas apartir da terceira
>
> Alain
>
> SuSE List escreveu:
> > Alain,
> >
> > Estas colunas tem tamanho fixo??? Você quer ler a partir do primeiro
> > caracter da coluna reach ate o final, desprezando os caracteres
> > iniciaiss ou vc só quer exibir as 4 ultimas colunas......de um exemplo
> > que fica mais facil....pois existem varias formas de se fazer isso...
> >
> > Alain wrote:
> >
> >>Eu tenho a saída de um comando (ntpq) assim (primeira linha):
> >>
> >>      remote           refid      st t when poll reach   delay   offset
> >>  jitter
> >>
> >>como eu faço para ler a coluna em que começa a palavra "reach"? Ou seja
> >>o número de caracteres desde o começo da linha.
> >>
> >>grtato,
> >>Alain
>
>
> ---------------------------------------------------------------------
> 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
> ---------------------------------------------------------------------
>
>
>
> *Yahoo! Grupos, um serviço oferecido por:*
>
> * 
> <http://br.rd.yahoo.com/SIG=12adu0u0d/M=264105.3931087.6562589.1588051/D=brclubs/S=2137111254:HM/EXP=1110993832/A=2361264/R=6/SIG=10v4acpp0/*http://br.shopping.yahoo.com/>*
>       
>
>
> ------------------------------------------------------------------------
> *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:
>       address@hidden
>       <mailto:address@hidden?subject=Unsubscribe>
>        
>     * O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
>       Serviço do Yahoo! <http://br.yahoo.com/info/utos.html>.
>
>



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



reply via email to

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