Muchas veces cuando creamos un script en Bash para automatizar algún proceso, tenemos la necesidad de adaptarnos a una configuración específica del usuario y por ello necesitamos crear un menú donde el usuario selecciona lo que necesita. Hoy os vamos a enseñar como hacer un menú de este tipo, pero más visual que los clásicos donde solo encontramos texto.
Creando el menú para nuestro shell script
Para trabajar con este tipo de menús vamos a utilizar whiptail, para ello es importante revisar si lo tenemos instalado.
Con introducir el propio nombre en la terminal podemos ver las opciones que nos permite el programa:
Por ejemplo podemos hacer un menú del tipo yes/no con el siguiente código:
whiptail --yesno "¿Te gusta Somos Binarios?" 8 78
La sintaxis es bastante sencilla, whiptail seguido del tipo de menú que queremos hacer, el texto que queremos que salga por la terminal y la altura y anchura del cuadro de diálogo.
Con este código obtenemos el siguiente resultado:
Además es importante combinar este código con un script, donde dependiendo de la opción que tome el usuario, se de una respuesta u otra. Este es un posible código de ejemplo:
#! /bin/bash
if (whiptail --title "Encuesta SOmos Binarios" --yesno "
¿Te gusta Somos Binarios?" 10 40 )
then
echo -e "\n Nos encanta que te guste\n"
else
echo -e "\nEstamos mejorando para que te guste\n"
fi
Cómo podéis ver en este pequeño ejemplo, es muy sencillo crear un menú gráfico para nuestro shell scripts con ayuda de whiptail y así nuestros proyectos tendrán un aspecto mucho más elegante y profesional. Si vuestra intención es utilizarlo y explotar todas sus características o simplemente queréis ver más ejemplos podéis acceder a la siguiente web que es la que hemos utilizado como fuente para este artículo.
Si tenéis alguna duda, recomendación o cualquier consulta, dejamos los comentarios abiertos.