Foro de elhacker.net

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
  1. #!/bin/bash
  2.  
  3. select RESP in Suma Resta Multiplicar Salir; do
  4. case $RESP in
  5.   "Suma")
  6.              read -p "Introduce el primer numero " suma1
  7.              read -p "Introduce el segundo numero " suma2
  8.              suma=$((suma1+suma2))
  9.              echo "El resultado de suma es: $suma"
  10.              ;;
  11.    "Resta")
  12.              read -p "Introduce el primer numero" suma1
  13.              read -p "Introduce el segundo numero" suma2
  14.              resta=$((suma1-suma2))
  15.              echo "El resultado de resta es: $resta"
  16.              ;;
  17.     "Multiplicar")
  18.              read -p "Introduce el primer numero" suma1
  19.              read -p "Introduce el segundo numero" suma2
  20.              multiplicar=$((suma1*suma2))
  21.              echo "El resultado de la multiplicacion  es: $multiplicar"
  22.              ;;
  23.       Salir)
  24.              break
  25.  esac
  26.  REPLY=
  27.  done