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

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

Re: Pressionar tecla?


From: Max
Subject: Re: Pressionar tecla?
Date: Thu, 01 Sep 2011 14:29:45 -0000
User-agent: eGroups-EW/0.82

Trazendo o tópico das cinzas...

Bem, sou novo em programação Shell e estou tendo problemas o tal do "pressione 
qq tecla".
Tenho um script bem básico de calculadora feita com menu (case). Após exibir o 
resultado da operação, ela pede para o usuário pressionar qq tecla para voltar 
ao menu da calculadora.

Na primeira vez em ele cai no case, funciona tranquilamente. Na segunda, ele 
passa reto pelo read e retorna ao menu, sem esperar o usuario pressionar alguma 
tecla.

Segue parte do script:


#!/bin/bash

clear
echo -e "1-Adicao\n2-Subtracao\n"
read -p "Entre com a opção desejada: " OPC

case $OPC in
1) clear; echo -e "ADICAO: a + b"
   read -p "Valor de a: " NUM1
   read -p "Valor de b: " NUM2
   echo "Resultado: $NUM1 + $NUM2 = $(($NUM1+$NUM2))"

# Aqui começa o problema, a primeira vez ele executa corretamente
# Na segunda vez que entro na opção 1, ele passa direto pelo read
# e retorna ao menu da calculadora executando esse mesmo script, 
# o calc.sh.

   echo -e "\nPressione qq tecla para retornar ao menu principal"
   read -n1
   sh /home/$USER/calc.sh;;

Abraços,

Fábio


--- Em address@hidden, Gilberto Martins <g.martins@...> escreveu
>
> Assim, ele vai digitar qualquer coisa, mas só continua qdo pressionar
> ENTER. Se entendi direito, ele quer continuar ao pressionar qualquer
> tecla sem ter que pressionar ENTER depois desta tecla.
> 
> Se vc deseja que qualquer tecla suspenda a interrupção, poderia ser o
> seguinte:
> 
> 1 #!/bin/sh
> 2 echo -n "Pressione qq tecla para continuar"
> 3 read -n 1
> 4 clear
> 5 echo Ok
> 
> Em Qui, 2004-06-17 às 15:59, catiafm@... escreveu:
> 
> > 
> > 
> > Se você quer apenas que ele aguarde uma tecla qualquer, pode fazer inserir
> > a linha
> > 
> > 
> > read
> > 
> > 
> > Se além disso você quizer que ele exiba mensagem solicitando pressionamento
> > da tecla, coloque no script:
> > 
> > echo "Pressione qualquer tecla:"
> > read
> 
> 
> 
> Gilberto Martins <g . martins (at) pobox . com>
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>




reply via email to

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