Pular para o conteúdo

Variável de numero inteiro ou float

Dica publicada em Shell Script / Variáveis
Jônatas Ramiro Goulat Jonatas_rg
Hits: 8.788 Categoria: Shell Script Subcategoria: Variáveis
  • Indicar
  • Impressora
  • Denunciar

Variável de numero inteiro ou float

Quem nunca fez um script que esperava um numero e ter problemas com caracteres no meio? Enfim, você espera um "1024" e de repente vem um "102r4"

Uma forma fácil de resolver é validar a variável no momento da leitura :

until echo $escolha | grep -E '^[0-9]+$'
do
   read escolha
done
echo $escolha

Se quiser , também é possível ler variáveis no estilo float, ou seja, com um ponto no meio.

Exemplo: 3.141596

until echo $escolha | grep -E '^[0-9]+\.?[0-9]+$'
do
   read escolha
done
echo $escolha

Ou talvez seja preciso definir uma quantidade de casas, por exemplo: uma dezena.

echo dezena

until echo $escolha | grep -E '^[0-9]{2}$'
do
   read escolha
done
echo $escolha

Existe uma enorme quantidade de regras que podem ser criadas. Só é preciso um pouquinho de conhecimento de expressões regulares e ser feliz :)


Nenhuma dica encontrada.

DictConv: Converta dicionários do Babylon para o StarDict

Operações matemáticas diretamente pelo bash

Compilar programas com muitos parâmetros

Controle e Automação

Exportar variáveis de um script no mesmo sub-shell

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.