Você já tem uma função!
Então vai outra: :)
#----------------------
key(){
TIMEOUT='-t30'
UP=$'\x1b\x5b\x41'
DOWN=$'\x1b\x5b\x42'
KEY=;STRING=
while [ ! $KEY ]&&read -s -r -n1 $TIMEOUT;do
[ ${#REPLY} -eq 0 ]&&KEY=ENTER
STRING="$STRING$REPLY"
[ "${STRING}" != "${STRING/$UP/}" ]&&KEY=UP
[ "${STRING}" != "${STRING/$DOWN/}" ]&&KEY=DOWN
done
echo "$KEY"
}
while :;do case `key` in
UP)echo 1
;;DOWN)echo 2
;;ENTER)date;break
esac;done
#-----------------------
Basta marcar o código entre os delimitadores, colar no prompt, e
experimentar. Apenas como registro para eventuais consultantes. :)
No seu script acho que você não quer isto:
[C) break;;
[D) break;;
------------------------------------------------------------------
From: "Thiago Braga Santana"
TelaPrincipal ()
{
tput setab 4
tput setaf 7
clear
}
TelaPrincipal
while read -sn1 a
do
TelaPrincipal
y=
x=$(echo "$a" | cat -vet)
[[ "$x" == "^[$"* ]] && read -n2 y
case $y in
[A) tput cup $PriMenuLinha $PriMenuColuna
tput setab 4
tput setaf 7
echo "Primeira opção (Primeira opção)"
tput sgr0;;
[B) tput cup $SecMenuLinha $SecMenuColuna
tput setab 4
tput setaf 7
echo "Segunda opção (Primeira opção)"
tput sgr0;;
[C) break;;
[D) break;;
esac
done
echo -e "
"
clear
Se alguém quiser dar alguma sugestão de como otimizar ele, será muito bem
vindo. Ainda falta a opção da tecla Enter que ainda não entendi como
colocar, mais de resto é exatamente o que eu queria fazer.
---------------------------------------------------------------------
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