shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re:[shell-script] Digite um número...


From: MrBiTs
Subject: Re:[shell-script] Digite um número...
Date: Wed, 7 Sep 2005 07:33:14 -0300

> Estou tentando fazer um script da seguinte maneira:
> 
> ===================================================
> #!/bin/bash
> #
> echo "Digite um número entre 1950 e 2000: \c"
> read Num
> if [ o nr digitado está entre 1950 e 2000 ]
> then
> break
> else
> echo "O nr nao está ente 1950 e 2000"
> echo "Tecle para sair."
> read
> fi
> ===================================================
> 
> A idéia é que o scrip aceite somente valores entre 1950 e 2000
> e rejeite as demais informações.

Como já diria Mestre Yoda: There is no try. Do, or do not. "Estar tentando" é 
gerundismo.

Seu problema está mais para lógica do que para shell-script em sí. Em um 
algorítmo qualquer, faríamos:

Início
   Variavel numero: inteiro;
   Escreva "Digite um número: ";
   Leia numero;
   Se numero >= 1950 E numero <= 2000 entao
      Escreva "Numero aceito";
   Senao
      Escreva "Numero invalido";
   Fim Se
Final

Certo ? É o mesmo em shell. O pulo do gato está em construir um if [ $numero 
-ge 1950 -a $numero -le 2000 ]. Isso é o básico. Verifique em manuais e 
tutoriais de shell todos os operadores lógicos e de comparação que você possui. 
No nosso exemplo, -ge é maior ou igual ( greather equal ), -le é menor ou igual 
( less equal ) e -a é o E ( and ) lógico.


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]