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

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

Re: [shell-script] Menu em script


From: marcio moreira
Subject: Re: [shell-script] Menu em script
Date: Wed, 5 Oct 2005 20:48:36 -0300 (ART)

muito melhor utilizar a estrutura do case, pois tb
podes utilizar metacaracteres para execeção. Verifique
tb o select que é utilizado em conjunto do case.


Att, marcio hugo
--- Marcos Notari Junior <address@hidden>
escreveu:


---------------------------------
Caros, 

Estou tentando fazer um menu, onde uma determinada
empresa vai acessar via 
ssh. Criei o menu, porém ele está me apresentando
falhas. Neste menu, o 
usuário deve escolher uma opção, que no caso vai ser
numérica. 
Quando o usuário digita uma letra, ou um número que
não encontra-se no menu, 
ele está saindo do script sozinho, e quando é
precionado Enter sem uma opção 
ele retorna outro erro. Só para constar, quando o
usuário utiliza o ssh, eu 
defini o shell do usuário como o script no passwd. 

O código é este abaixo: 

while : ; 
do 

clear 

echo "Empresa" 
echo "Bem vindo" 
echo " " 
echo "Opções para manutenção em nosso sistema:" 
echo " " 
echo "Para opção 1 digite: 1" 
echo "Para opção 2 digite: 2" 
echo "Para opção 3 digite: 3" 
echo "Para opção 4 digite: 4" 
echo "Para sair: 0" 
echo " " 

read -p "Entre com a opção: " Lib 
if [ "$Lib" != {0-9} ]; then 
        echo "Formato invalido!" 
        shift 
fi 


if (( $Lib == 0 )); then 
        echo "Obrigado por utilizar nosso sistema" 
        echo "Até logo" 
        sleep 4 
        clear 
        break 

elif (( $Lib == 1 )); then 
        clear 
        echo "Empresa" 
        echo " " 
        echo "Você está em: Manutenção - Opção 1" 
        echo " " 
        echo "Sub Opção 1" 
        echo "Sub Opção 2" 
        echo "Para sair: 0" 
        read -p "Opção: " op_sub1 
        if [ "$Lib" != {0-9} ]; then 
                echo "Formato invalido!" 
                shift 
        fi 

                if (( $op_sub1 == 0 )); then 
                        echo "Obrigado por utilizar
nosso sistema" 
                        echo "Até logo" 
                        sleep 4 
                        clear 
                        break 
                elif (( $op_sub1 == 1 )); then 
                        echo "Comando - sub-opção 1" 
                        sleep 3 
                        shift 
                elif (( $op_sub1 == 2 )); then 
                        echo "Comando - sub-opção 2" 
                        sleep 3 
                        shift 
                else 
                        echo "Opção não cadastrada." 
                        sleep 3 
                        shift 
                fi 

elif (( $Lib == 2 )); then 
        echo "comando 2" 
        echo "Obrigado por utilizar nosso sistema" 
        echo "Até logo" 
        sleep 3 
        shift 

elif (( $Lib == 3 )); then 
        echo "comando 3" 
        echo "Obrigado por utilizar nosso sistema" 
        echo "Até logo" 
        sleep 3 
        shift 

elif (( $Lib == 4 )); then 
        echo "comando 4" 
        echo "Obrigado por utilizar nosso sistema" 
        echo "Até logo" 
        sleep 3 
        shift 

else 
        echo "Esta opção não encontra-se no sistema." 
        echo "Favor entrar com as opções: 1-4" 
        echo "Para sair digite: 0" 
        sleep 3 
        shift 
fi 
done 


O que posso fazer neste código para que não ocorram
mais erros? 
E se alguém tiver uma solução melhor q esta,
agradeceria. 


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



---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens
de programação, como perl, C etc. Quem insistir em não
seguir esta regra será moderado sem prévio aviso.
---------------------------------------------------------------------
Sair da lista:
address@hidden
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------


              
                  Yahoo! Grupos, um serviço oferecido
por:                    PlayStation 2 a partir de R$
659! Parcele!Celular Motorola com câmera a partir de
R$ 449!Siemens SL65 com câmera a partir de R$ 730!
Câmeras Digitais a partir de apenas R$ 399! Parcele!
CD Players Pioneer a partir de R$ 369!MP3 Player iPod
a partir de R$ 799! Parcele!                      
  
---------------------------------
Links do Yahoo! Grupos

   Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/shell-script/
 
   Para sair deste grupo, envie um e-mail para:
address@hidden
 
   O uso que você faz do Yahoo! Grupos está sujeito
aos Termos do Serviço do Yahoo!.



Atenciosamente,

###########################
#      Marcio Hugo        #
#  Consultor/Instrutor    #
#    Linux/UNIX/W2K       #
###########################


        



        
                
_______________________________________________________ 
Novo Yahoo! Messenger com voz: ligações, Yahoo! Avatars, novos emoticons e 
muito mais. Instale agora! 
www.yahoo.com.br/messenger/


reply via email to

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