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

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

Re: [shell-script] if com valores decimais


From: Denis Costa
Subject: Re: [shell-script] if com valores decimais
Date: Mon, 25 Jul 2011 19:34:08 -0300

Pode ser feito com bc.

$ bc <<< 'if (0.23 >= 1) print "1\n"'
$ bc <<< 'if (3.23 >= 1) print "1\n"'
1


--
Denis Silva Costa
Graduando em Informática (Banco de dados) - Fatec - São José dos Campos
Usuário Linux: #516577
Usuário Ubuntu: #31758
Certificado LPIC-1, CLA
"May the force be with you"



Em 25 de julho de 2011 19:28, Elder Marco <address@hidden> escreveu:

> **
>
>
> 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]
>
>  
>


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



reply via email to

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