[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] if com valores decimais
From: |
Elder Marco |
Subject: |
Re: [shell-script] if com valores decimais |
Date: |
Mon, 25 Jul 2011 19:28:53 -0300 |
2011/7/25 sergio <address@hidden>
> **
>
>
> Caros, mais uma vez...rs
> tenho um arquivo com n valores...todos quebrados...ex(0.567, 0.678,
> 0.234.....) e assim vai.
> Preciso pegar os valores que são maior ou igual a 1.
> Então pensei em um for para ir pegando as linhas e um if para checar o
> valor...mas quando coloco no if ex.. a=0.567; b=1; test $a -eq $b
> ele me retorna o erro:
>
> bash: test: 0.531: esperado expressão de número inteiro
>
> nunca trabalhei com decimal no shell..alguem pode me ajudar?
>
> Obrigado novamente.
>
>
> Você poderia utilizar o awk pra isso. Troque as vírgulas por quebras de
linha e utilize a saída como uma entrada para o awk. Veja um exemplo:
$ cat teste.dat
0.587, 0.598, 1.2, 0.5, 3.2
$ tr ',' '\n' < teste.dat | awk '$1 > 1 { print $1 }'
1.2
3.2
---
Elder Marco
GNU/Linux User: #471180
"Contra o positivismo, que pára perante os fenômenos e diz: 'Há apenas
fatos', eu digo: 'Ao contrário, fatos é o que não há; há apenas
interpretações'. "(Nietzsche)
[As partes desta mensagem que não continham texto foram removidas]