Galera,
Recentemente fiz uma pergunta sobre como usar o dialog
num shell-script, do tipo cheklist, usando o case ou
if e um colega nosso me repondeu que eu poderia tá
usando o shift, mas achei um pouco superficial, mas
resolvi "fuçar" muito pra descobrir como fazer o
script queria, fui testando, fazendo outra coisa e
testando novamente, até que...EUREKA !!! CONSEGUI !!!.
Vejam abaixo o resultado. Com este exemplo
desenvolvido por mim, poderei utilizar para muitas
outras coisas, inclusive para o projeto final que
estou desenvolvendo na faculdade, pois estou
desenvolvendo tudo em Linux e como não poderia deixar
de ser, precisava desenvolver tudo em linha de comando
e usando uma interface leve e bonita, como é o dialog.
Para tudo isto tive que "matutar" muito em cima dos
exempo dado pelo Aurelio no site,
http://aurelio.net/shell/dialog/.
Aí tá o script:( no lugar das funções simples, posso
chamar funções mais complexas, este é o "show" da
coisa )
#! /bin/bash
rock(){
echo " Eu gosto de ROCK. "
}
samba(){
echo " Eu gosto de SAMBA. "
}
metal(){
echo " Eu gosto de METAL. "
}
jazz(){
echo " Eu gosto de JAZZ. "
}
pop(){
echo " Eu gosto de POP. "
}
mpb(){
echo " Eu gosto de MPB. "
}
# INICIO DO PROGRAMA
e=$( dialog --stdout \
--separate-output \
--checklist 'VOCÊ GOSTA DE:' 0 0 0 \
rock '' OFF \
samba '' OFF \
metal '' OFF \
jazz '' OFF \
pop '' OFF \
mpb '' OFF )
# [ $? -eq 1 ] || [ $? -eq 255 ] ); then; echo 'Você
está saiu do programa'; fi
echo "$e" | while read l;do case "$l" in
"rock")
rock;;
"samba")
samba;;
"metal")
metal;;
"jazz")
jazz;;
"pop")
pop;;
"mpb")
mpb;;
*) echo 'Digite uma opção correta';shift;;
esac
shift
done
Jesus said: I'm the way, the truth and the life, anyone come to the God
without me.
Think about this.
Rafig - ICQ: 271557403
_______________________________________________________
Você quer respostas para suas perguntas? Ou você sabe muito e quer compartilhar
seu conhecimento? Experimente o Yahoo! Respostas !
http://br.answers.yahoo.com/
---------------------------------------------------------------------
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
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil
Links do Yahoo! Grupos