Estarei abordando o tema menu em shell script. Tenho visto na internet uma imensidão de scripts cheios de IF, else (condições lógicas), tornando o script difícil de ser interpretado, algoritmo lento ao ser lido pelo interpretador de comandos, no entanto existem comandos que podem minimizar de maneira muito fácil e prática esta tarefa.
Os comandos que estarei utilizando para este menu de opções são: case e while.
Segue o exemplo do menu:
#!/bin/bash
# Menu Shell
menu ()
{
a="ok"
while true $a !="ok"
do
echo "MENU PRINCIPAL"
echo ""
echo "1 - Executar comando1"
echo "2 - Executar comando2"
echo "3 - Executar comando3"
echo "4 - Finalizar e Carregar as Alterações"
echo ""
echo "OBS. pressione 'ctrl+c' p/ sair sem reiniciar o Linux"
echo ""
echo "Digite a opção desejada: "
read a
case $a in
4) clear; echo "FINALIZADO O SCRIPT REINICIANDO O SERVIDOR";
sleep 2; reboot;
sleep 2; clear; break;;
1)comando1;;
2)comando2;;
3)comando3;;
4)reboot;;
esac
done
}
menu
Bem, fácil não? Hoje em dia a criação de scripts em shell é muito utilizada, justamente por ser uma maneira de agilizar operações que levaria muito tempo para ser feita se fosse por linhas de comandos. Por outro lado é usado também para facilitar o manuseio de usuário iniciantes que precisam lidar com servidor para fazer backups e outras tarefas.
Uma dica importante: Não vire um robô de script, aprenda fazer e utilize-os, mas não perca a essência, não deixe de usar a linha de comando, mesmo que seja pra praticar, pois a falta de prática leva ao esquecimento...
[2] Comentário enviado por navegador_x11 em 09/01/2007 - 11:02h
Bem amigo, realmente existe o comando select, porém o seu uso é um pouco mais complexo, esta dica foi elaborada para usuários iniciantes em programação shell, porém se vc quiser elaborar uma dica sobre o select, vai ser bem recebida pelo Vol. ñ quer Tentar? Estou aguardando!
Ab!