Como converter string para float e integer? [RESOLVIDO]

1. Como converter string para float e integer? [RESOLVIDO]

Minduim Power
minduim

(usa Ubuntu)

Enviado em 08/04/2009 - 17:10h

Pessoal alguem poderia me ajudar falando qual é função que converte string para integer ou float em shell script?

#!/bin/bash
tamanho_max=7,4M
t=$(/usr/bin/du -h -s /home/backup/)
total=$(echo $t |cut -f1 -d"/")
echo "$t"
echo $total
echo $total+1

if [ ${total} -ge ${tamanho_max} ]
then
echo "maior"
else
echo "menor"
fi



  


2. Re: Como converter string para float e integer? [RESOLVIDO]

Geraldo José Ferreira Chagas Júnior
gjr_rj

(usa Debian)

Enviado em 08/04/2009 - 20:15h

o que você pretende fazer? De repente, não precisa fazer a conversão.


3. Re: Como converter string para float e integer? [RESOLVIDO]

Minduim Power
minduim

(usa Ubuntu)

Enviado em 09/04/2009 - 15:04h

Eu tenho uma variavel com o retorno do comando "du" que me retorna o valor de "7,5M" por exemplo e eu gostaria de comparar com outro valor numerico.
Ex.:
Se (valor_de_du > 600)
Tudo OK!
senao
Deu Zebra

Por este motivo tenho que converter de string para float, pois não tem como fazer comprações deste tipo com string, no maximo que posso fazer é verificar se os valores são iguais.



4. Re: Como converter string para float e integer? [RESOLVIDO]

Sandro Marcell
SMarcell

(usa Slackware)

Enviado em 10/04/2009 - 01:59h

E porque você não faz a comparação utilizando os valores em bytes?

tamanho_max=7577 # = 'echo "7.4 * 1024" | bc -l' desconsiderando casas decimais!

du -bs /home/backup/ # O '-b' retorna o valor em bytes.




5. Re: Como converter string para float e integer? [RESOLVIDO]

Minduim Power
minduim

(usa Ubuntu)

Enviado em 12/04/2009 - 00:31h

Valeu a dica do "du", mas ainda continua como string não da para comparar se é maior ou menor.



6. Re: Como converter string para float e integer? [RESOLVIDO]

Sandro Marcell
SMarcell

(usa Slackware)

Enviado em 15/04/2009 - 14:20h

Usado os valores em bytes, tente:

if ((total >= tamanho_max))
then
...

ou ainda:

if let "$total >= $tamanho_max"
then
...


7. Problema Resolvido!!!

Minduim Power
minduim

(usa Ubuntu)

Enviado em 16/04/2009 - 14:33h

O problema com a comparação de strings foi solucionado, muito obrigado pela dica, lhe devo uma. Mas ainda ficou uma duvida no ar: Como efetuar operações aritmétricas com strings?
Obs.: Estou criando mais este topico, se você souber a resposta lhe devo duas.. hahah ...obrigado pela atenção se eu puder lhe ajudar, pode contar comigo.
http://www.vivaolinux.com.br/topico/Sed-Awk-ER-Manipulacao-de-Textos-Strings/Como-efetuar-operacoes-...






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts