Pessoal, estou querendo consertar o camando abaixo mas não sei o que fazer.
O que acontece é o seguinte, a pessoa deve entra com números até 20 (somente números) mas se digitarmos números e letras ele não dispreza os números, pois era para ele guardar somente as letras, pois os números estão de acordo com o que ele pede, ai ele registra o número e a letra digitada. Como resolver este problema, só quero guardar o erro e não o erro e o acerto, neste caso o erro é digitar letras.
Script segue abaixo.
#!/bin/bash
#Verifica se o numero digitado e menor que 20
echo "Digite um numero menor que 20: "
read numero
if [ -z $numero ];
then
echo "Voce deve digitar um numero."
echo "O programa sera reiniciado."
sleep 3
clear
./verifica_numero_melhorado_2
else
echo $numero > arq
grep -i [a-z] arq > arq1
if [ -s arq1 ];
then
echo "Voce deve digitar numeros e não letras."
echo "O programa sera reiniciado."
sleep 3
clear
./verifica_numero_melhorado_2
else
if [ $numero -lt 20 ];
then
echo "Voce digitou corretamente um numero menor que 20."
Pergunta
Danilo Mestre
Pessoal, estou querendo consertar o camando abaixo mas não sei o que fazer.
O que acontece é o seguinte, a pessoa deve entra com números até 20 (somente números) mas se digitarmos números e letras ele não dispreza os números, pois era para ele guardar somente as letras, pois os números estão de acordo com o que ele pede, ai ele registra o número e a letra digitada. Como resolver este problema, só quero guardar o erro e não o erro e o acerto, neste caso o erro é digitar letras.
Script segue abaixo.
#!/bin/bash
#Verifica se o numero digitado e menor que 20
echo "Digite um numero menor que 20: "
read numero
if [ -z $numero ];
then
echo "Voce deve digitar um numero."
echo "O programa sera reiniciado."
sleep 3
clear
./verifica_numero_melhorado_2
else
echo $numero > arq
grep -i [a-z] arq > arq1
if [ -s arq1 ];
then
echo "Voce deve digitar numeros e não letras."
echo "O programa sera reiniciado."
sleep 3
clear
./verifica_numero_melhorado_2
else
if [ $numero -lt 20 ];
then
echo "Voce digitou corretamente um numero menor que 20."
echo "Voce digitou $numero."
else
echo "Voce deve digitar um numero menor que 20."
fi
fi
fi
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.