|
From: | André Aun |
Subject: | Re: [shell-script] Checar se uma variávelé número |
Date: | Wed, 08 Dec 2004 00:23:30 -0200 |
User-agent: | Mozilla Thunderbird 0.8 (X11/20040913) |
Eliphas,Obrigado pela ajuda, mas esta solução só checa se o primeiro caractere é numero. Veja:
deejah@freud:~$ echo 31213 | grep -q "[0-9]$" && echo "NUMERO" NUMERO deejah@freud:~$ echo 3a233 | grep -q "[0-9]$" && echo "NUMERO" NUMERO Miranda, Já tentei o typeset, sem resultados: deejah@freud:~$ typeset -i var deejah@freud:~$ var=5 deejah@freud:~$ echo $var 5 deejah@freud:~$ var=5+a deejah@freud:~$ echo $var 5 deejah@freud:~$ echo "$var + 1" | bc 6 deejah@freud:~$ echo "$var + a" | bc Alguém tem alguma outra idéia? Obrigado a todos. André Aun Eliphas Levy Theodoro wrote:
André Aun, @ 00:59:Já que no shell não existe 'tipagem' das variáveis, como posso checar se uma variável é número ou não?Você pode usar um grep pra saber se ela só contém números... a="153" if echo "$a" | grep -q "^[0-9]$"; then echo "var a só tem números" fi No bash 2, daria pra fazer algo assim: a="153" if [ "$a" == "${a//[^0-9]}" ]; then echo "var a só tem números fi
[Prev in Thread] | Current Thread | [Next in Thread] |