[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Menu em script
From: |
Leogildo |
Subject: |
Re: Menu em script |
Date: |
Thu, 06 Oct 2005 00:06:24 -0000 |
User-agent: |
eGroups-EW/0.82 |
Ae Marcos,
Segue um modelo adaptado da solução que utilizo (os .... foram
adicionados apenas para forçar a identação):
monta_menu () {
....echo "Empresa"
....echo "Bem vindo"
....echo " "
....echo "Opcoes para manutencao em nosso sistema:"
....echo " "
....echo "1 - Inclusao"
....echo "2 - Consulta"
....echo "3 - Bloqueio"
....echo "4 - Manutencao"
....echo " "
....echo "F - Finaliza"
....echo " "
....read -p "Entre com a opcao: " Lib
}
while true
do
....clear
....monta_menu
....case $Lib in
........1) exec script_1;;
........2) exec script_2;;
........3) exec script_3;;
........4) exec script_4;;
.....[fF]) echo "Obrigado por utilizar nosso sistema";
...........echo "Até logo";
...........sleep 4;
...........clear;
...........break;;
........*) echo "Opcao invalida!!! -- Tecle <ENTER>"; read enter;;
esac
done
Obs.: optando por chamar sub-shells pelo comando "exec", não se
esquecer de inserir a chamada do script anterior (normalmente na
última linha) do sub-shell.
T+
--- Em address@hidden, Marcos Notari Junior
<marcosnj@i...> 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]
- Menu em script, Marcos Notari Junior, 2005/10/05
- Re: [shell-script] Menu em script, Fabiano Caixeta Duarte, 2005/10/05
- Re: [shell-script] Menu em script, marcio moreira, 2005/10/05
- Re: [shell-script] Menu em script, Tiago Barcellos Peczenyj, 2005/10/05
- Re: Menu em script,
Leogildo <=
- Re: [shell-script] Menu em script, moysespr, 2005/10/05
- RE: [shell-script] Menu em script, Reinaldo Marques de Lima, 2005/10/06