Que tal, buen dia!
Veran, tengo una duda... Voy a crear un pequeño menu con opciones en bash, sin embargo la mayoria de estas opciones invocan un ciclo while que como sabran una de las formas en terminandolo con la señal SIGINT (control + c) sin embargo al realizar esto, automaticamente me saca del script sin regresarme de nuevo al menu de opciones.
Se me ocurrio usar el comando trap, y funciona, pero solo 1 vez, es decir, si vuelvo a escoger la misma opcion y vuelvo a presionar ctrl + c ya no puedo salir del ciclo y por ende no puedo regresar al menu.
Esto es una forma muy muy simple del script que quiero hacer:
#!/bin/bash
declare -x opcion=0;
function menu()
{
trap menu SIGINT
echo -e "Ingresa 1\n"
read opcion
case $opcion in
1) while true; do echo -e "\n hola mama"; sleep 2; done ;;
2) exit;
esac
}
menu
Como lo dije anteriormente, el trap me funciona solamente 1 vez, si vuelvo a meterme a la opción 1 y presiono ctrl+c ya no sale del menu.
¿Alguna idea o sugerencia para que se pueda utilizar el trap mas de una vez?
Por su atencion, gracias!