Roberto, obrigado pela dica!
No entanto esta solução seria semelhante a que apresentei com o AWK!
nao escaparia do problema de ter que especificar todas as colunas do
meu arquivo!
fiz o seguinte comentário na msg inicial:
>sei fazer desta forma, mas a medida que o numero de coluna aumenta.
>torna-se inviavel!
>pois trabalhos com arquivos em que o numero de colunas varia de
>momento em momento.
> imaginem este numero varinado entre 50 - 70 colunas!
de qualquer forma. obrigado pela dica!
adotei as sugestoes indicadas no email anterior!
[]s
acosta
2006/11/28, Roberto Alves <[EMAIL PROTECTED]>:
> Ricardo,
> eu tenho um script que usei um truque que o Julio nos ensinou mas é para
> arquivos onde o numero de colunas é fixo.
> Mas sei que voce pode mudar se quebrar um pouco a cabeça.
> É mais ou menos assim:
>
> while :
> read COL1 COL2 COL3
> do
> COLUNA1=$(( "$COLUNA1" + "$COL1" ))
> COLUNA2=$(( "$COLUNA2" + "$COL2" ))
> COLUNA3=$(( "$COLUNA3" + "$COL3" ))
> done < /arquivo/de/entrada
>
> echo "Coluna1 tem $COLUNA1 no seu total"
> echo "Coluna5 tem $COLUNA2 no seu total"
> echo "O total de bytes é: $COLUNA3 em kbytes"
>
> Nesse caso o while usa o separador padrao para ler as colunas e você já as
> joga nas variaveis.
>
> Na verdade eu tinha um arquivo bagunçado onde separei só as colunas que
> queria e tratei no final uma coisa bem mais simples de se entender, usando
> cut, tr, e outras coisas mas a idéia é essa.
>
> abraços,
>
> Roberto Alves
>
>
>
>
>
>
> On 11/27/06, Ricardo Acosta <[EMAIL PROTECTED]> wrote:
> >
> > Ola Camaradas,
> > bom dia!
> >
> > como fazer pra somar colunas com o awk.
> > sem ter q declarar coluna por coluna!
> > teria como fazer uma matriz indexada?
> >
> > vejam o exemplo
> > ...
> > [EMAIL PROTECTED]: ~$ cat dados.dat
> > COL1 COL2 COL3 COL4
> > 0001 0011 0111 1111
> > 0002 0012 0112 1112
> > 0003 0013 0113 1113
> > 0004 0014 0114 1114
> > 0005 0015 0115 1115
> > ...
> >
> > sei fazer desta forma, mas a medida que o numero de coluna aumenta.
> > torna-se inviavel!
> > pois trabalhos com arquivos em que o numero de colunas varia de
> > momento em momento.
> > imaginem este numero varinado entre 50 - 70 colunas!
> >
> > ...
> > [EMAIL PROTECTED]: ~$ cat soma.sh
> > #!/bin/bash
> > awk '{ sum1 += $1
> > sum2 += $2
> > sum3 += $3
> > sum4 += $4
> > }
> > END{print sum1, sum2, sum3, sum4}
> > ' dados.dat
> > ...
> > o resultado que obtenho está certo, mas alguem saberia sugerir outra
> > forma de fazer isso?
> > mesmo que nao seja com o AWK!
> >
> > ...
> > [EMAIL PROTECTED]: ~$ ./soma.sh
> > 15 65 565 5565
> > ...
> >
> > []s
> > acosta
> >
> > --
> > __________________________
> > Ricardo Acosta
> > Laboratório de Clima e Biosfera
> > Depto. de Ciências Atmosféricas
> > Universidade de São Paulo
> >
> > Dê emoção à sua vida:
> > Faça pipocas com a panela aberta!
> >
> >
>
>
> [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
>
>
>
--
__________________________
Ricardo Acosta
Laboratório de Clima e Biosfera
Depto. de Ciências Atmosféricas
Universidade de São Paulo
Dê emoção à sua vida:
Faça pipocas com a panela aberta!