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

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

Re: [shell-script] Diferenças no calculo com AWK


From: Tiago Barcellos Peczenyj
Subject: Re: [shell-script] Diferenças no calculo com AWK
Date: Mon, 29 Oct 2007 10:19:46 -0200

PO mauricym, sem informar o que tem de diferente fica dificil ajudar.

Veja se o seu problema cai no exemplo abaixo
$ cat a.dat
1,2300
3,1415

$ awk '{ total += $1}END{ print total }' a.dat
4
$ LC_ALL=pt_BR  awk '{ total += $1}END{ print total }' a.dat
4,3715

Se for isso, é problema de 'localização', ou seja, vc esta usando
numeros com a notação pt_BR (onde o separador decimal é virgula) mas o
seu sistema operacional deve usar a notação en_US ou C, onde o
separador é . (o ponto).

Na duvida, troque o caracter , por . nesse caso, é mais comum ;-)

On 10/29/07, mauricym <address@hidden> wrote:
>
>
>
>
>
>
> Pessoal
>
> Tenho um script que em determinado ponto faz uma somatória de um campo
> me apresentando o total com o comando abaixo. Eu estava usando
> opensuse e funcionava ok. Agora que mudei minha maquina para ubuntu, o
> valor apresentado é outro completamente diferente!! Se executo o
> calculo em outra distribuição, como mandriva e opensuse funciona, mas
> em debian e ubuntu dá erro!?! Alguém poderia me ajudar??
>
> cat arquivo | awk '{total+=$7} END{print "Total= R$ " total }'
>
> O conteudo do arquivo, apenas uma parte, é:
>
> 1,1474*
> 0,5464*
> 2,732*
> 0,6556*
> 3,2237*
> 1,3113*
> 0,2732*
> 0,2732*
> 0,2732*
> 1,2567*
> 0,0311*
> 0,0311*
> 0,0311*
> 0,0311*
> 0,0622*
>
> Obrigado
>
> Mauricy
>
> 



-- 
Tiago B Peczenyj
Linux User #405772

http://peczenyj.blogspot.com/


reply via email to

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