[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
ER no Shell
From: |
Diogo Barros |
Subject: |
ER no Shell |
Date: |
Thu, 14 Jul 2016 19:07:08 +0000 (UTC) |
Olá Pessoal, Boa tarde!
Continuando meus estudos sobre SHELL e ER, fiz um pequeno programa sem
complexidade alguma.
#!/bin/bash
echo "Digite um número entre 1 e 9: "
read chute
num='[0-9]' #Ja tentei com \[0-9\]
if [[ $chute =~ $num ]]; then
echo "$chute é um numero valido"
else
echo "Tente Novamente"
fi
Eu queria que o SHELL verificasse o numero de acordo com o padrão da ER, pelo
que li até o momento em livros a chamada de comparação do SHELL para ER é =~ .
Pelo que entendo neste caso eu poderia colocar somente o primeiro caracter com
um numero de 1 a 9 e no caso de digitar qualquer numero acima de 9 ele
retornasse a mensagem "Tente novamente".
Porém não é o que tem acontecido se digito qualquer numero acima de 9 ele
aceita e retorna a mensagem de que o "Numero é valido" mesmo sendo 10 100 ou
999999.
Para qualquer outro character que não seja numero ele valida corretamente.
Minha duvida é se acabei usando algum parametro errado no SHELL.
Obrigado
- ER no Shell,
Diogo Barros <=