Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: xGENiiiuS en 4 Febrero 2016, 17:27 PM

Título: buenas podeis ayudarme sobre un script en linux
Publicado por: xGENiiiuS en 4 Febrero 2016, 17:27 PM
buenas estamos dando scrip en linux y tenemos que crear un script con el cual creamos un menu que pueda sumar restar y multiplicar y una cuarta opcion salir el problema es que la otra condicion es que cuando yo introduzco la suma la resta o lo que sea tiene que aparecerme de nuevo el menu y no me aparecen, me explico:

tengo el menu me sale pero cuando pulso 1 introduzco los dos numeros y los sumo y me aparece el resultado no me vuelve a salir el menu asi:

1) sumar
2) restar
3)multiplicar
4)salir
hago la cuenta y me sale #? (creo recordar) y lo que quiero es que no me aparezca asi si no que hago la cuenta y aparece el menu completo de nuevo paso el codigo:

#!/bin/bash

select RESP in Suma Resta Multiplicar Salir; do
case $RESP in
    suma)
              read -p "introduce el primer numero" suma1
              read -p "introduce el segundo numero" suma 2
              suma=(( $suma1+$suma2))
              echo "el resultado de suma es: $suma"
              ;;
    resta)
               read -p "introduce el primer numero" suma1
              read -p "introduce el segundo numero" suma 2
              suma=(( $suma1-$suma2))
              echo "el resultado de resta es: $resta"
              ;;
     multiplicar)
                 read -p "introduce el primer numero" suma1
              read -p "introduce el segundo numero" suma 2
              suma=(( $suma1*$suma2))
              echo "el resultado de la multiplicacion  es: $multiplicar"
              ;;
       salir)
              break
  esac
  done

-------------------------------------------------------------------------------------------------
el scrip hace las cuentas bien pero tiene que aparecer el menu cuando haga la cuenta no el #? y pulsas 2 y ya restaria (no se si me explico bien ;(  )
Título: Re: buenas podeis ayudarme sobre un script en linux
Publicado por: moikano→@ en 4 Febrero 2016, 18:07 PM
Tienes que ponerle un while hasta que la opción sea salir, entonces sales del while y del script.
Suerte!
Título: Re: buenas podeis ayudarme sobre un script en linux
Publicado por: xGENiiiuS en 4 Febrero 2016, 18:47 PM
meto el select dentro del while¿?
Título: Re: buenas podeis ayudarme sobre un script en linux
Publicado por: Slava_TZD en 4 Febrero 2016, 21:06 PM
Código (bash) [Seleccionar]
#!/bin/bash

select RESP in Suma Resta Multiplicar Salir; do
case $RESP in
   "Suma")
              read -p "Introduce el primer numero " suma1
              read -p "Introduce el segundo numero " suma2
              suma=$((suma1+suma2))
              echo "El resultado de suma es: $suma"
              ;;
    "Resta")
              read -p "Introduce el primer numero" suma1
              read -p "Introduce el segundo numero" suma2
              resta=$((suma1-suma2))
              echo "El resultado de resta es: $resta"
              ;;
     "Multiplicar")
              read -p "Introduce el primer numero" suma1
              read -p "Introduce el segundo numero" suma2
              multiplicar=$((suma1*suma2))
              echo "El resultado de la multiplicacion  es: $multiplicar"
              ;;
       Salir)
              break
  esac
  REPLY=
  done