[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Somando uma lista
From: |
Alan Diones |
Subject: |
Re: [shell-script] Somando uma lista |
Date: |
Tue, 18 Dec 2007 12:01:33 -0200 |
obrigado
----- Original Message -----
From: Arthur Renato Mello
To: address@hidden
Sent: Tuesday, December 18, 2007 11:26 AM
Subject: Re: [shell-script] Somando uma lista
Alan,
basicamente eh uma alteracao do codigo que o Flavio mandou, para ao
inves de contar, somar os valores.
Primeiro passamos a saida do comando ls -la para ser tratada pelo awk.
Em awk, normalmente temos um bloco do tipo CONDICAO { ACAO }.
O awk irá ler a entrada, linha por linha, e para cada linha da entrada
irá testar as condições, realizando as ações correspondentes.
No exemplo:
$ ls -la | awk '{print $5}'
4096
4096
493
582
nao temos nenhuma condicao, entao o bloco "print $5" sera executado
para todas as linhas.
Como nao alteramos o delimitador padrao do awk, ele esta usando o
espacamento, por isso a variavel $5 possui o conteudo da quinta coluna
da entrada, separada por espacamento, ($1 da primeira, $2 da
segunda...).
No comando usamos outros 2 blocos (voce pode ter quantos blocos
desejar) com 2 condicoes especiais, BEGIN (executada antes do awk
comecar a interpretar a entrada) e END (executada após o processamento
do último registro).
Na acao do BEGIN, iniciamos uma variavel total com zero.
Na acao do bloco principal incrementamos essa variavel com o valor de
$5 (e ainda imprimimos $5).
E, finalmente, na acao do bloco END, imprimimos a string "Total:" e o
valor final da variavel total.
[]s
Arthur
On Dec 18, 2007 10:59 AM, Alan Diones <address@hidden> wrote:
>
>
>
>
>
>
> Arthur, gostei da idéia, me explica passo a passo como funciona, tem
> jeito?
>
> ls -la | awk 'BEGIN{total=0}; {total+=$5; print $5}; END{print "Total:",
> total}'
>
> Alan Diones
> Em Ter, 2007-12-18 às 10:52 -0200, Arthur Renato Mello escreveu:
>
> > Leonardo,
> >
> > ls -la | awk 'BEGIN{total=0}; {total+=$5; print $5}; END{print
> > "Total:", total}'
> >
> > []s
> > Arthur
> >
> > On Dec 18, 2007 10:42 AM, Leonardo D'Angelo Goncalves
> > <address@hidden> wrote:
> > >
> > >
> > >
> > >
> > >
> > >
> > > tá mais eu quero somar e naum contar...hehe
> > >
> > > Em 18/12/07, Flavio Junior <address@hidden> escreveu:
> > >
> > > >
> > > > Com o proprio awk:
> > > >
> > > > $ ls -la | awk 'BEGIN{count=0}; {count++; print $5} END{ print
> > "Total:",
> > > > count}'
> > > >
> > > > mas pode fazer isso até com o wc -l mesmo..
> > > >
> > > > --
> > > >
> > > > Flávio do Carmo Júnior
> > > >
> > > > On Dec 18, 2007 10:32 AM, Leonardo D'Angelo Goncalves
> > > >
> > > > <leonardodg@xxxxxxxxxxx> wrote:
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > Bom dia
> > > > >
> > > > > Gostaria de saber como somar a lista gerada por este comando,
> > pois
> > > > > tenho varias listas e gostaria de ter um total:
> > > > >
> > > > > ls -la | awk '{print $5}' > lista.txt
> > > > >
> > > > > Obrigado
> > > > >
> > > >
> > > >
> > > >
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > >
> >
> >
> >
> >
>
>
__________ Informação do NOD32 IMON 2730 (20071218) __________
Esta mensagem foi verificada pelo NOD32 sistema antivírus
http://www.eset.com.br
__________ Informação do NOD32 IMON 2730 (20071218) __________
Esta mensagem foi verificada pelo NOD32 sistema antivírus
http://www.eset.com.br
[As partes desta mensagem que não continham texto foram removidas]
- Somando uma lista, Leonardo D'Angelo Goncalves, 2007/12/18
- Re: [shell-script] Somando uma lista, Flavio Junior, 2007/12/18
- Re: [shell-script] Somando uma lista, Leonardo D'Angelo Goncalves, 2007/12/18
- Re: [shell-script] Somando uma lista, Arthur Renato Mello, 2007/12/18
- Re: [shell-script] Somando uma lista,
Alan Diones <=
- lista, Suporte Técnico - DEPIN, 2007/12/18
- Re: [shell-script] lista, Flavio Junior, 2007/12/18
- Re: [shell-script] lista, Suporte Técnico - DEPIN, 2007/12/18
- Re: [shell-script] lista, Alan Diones, 2007/12/18
- Re: [shell-script] lista, CyberCrow, 2007/12/19
- Re: [shell-script] Somando uma lista, Leonardo D'Angelo Goncalves, 2007/12/18