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.797 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.

Controle e Automação

Operações matemáticas diretamente pelo bash

Hora no prompt do terminal

Truques para tratamento de variáveis em shell script

Compilar programas com muitos parâmetros

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.