El paquete de diálogo es una pequeña herramienta ingeniosa que fue creada originalmente por Savio Lam y actualmente es mantenida por Thomas E. Dickey. Este paquete en realidad recrea cuadros de diálogo estándar de Windows en un entorno de texto utilizando códigos de control de escape ANSI. Estos cuadros de diálogo se pueden incorporar fácilmente a sus scripts de shell para interactuar con los usuarios de sus scripts.
El paquete de diálogo no está instalado en todas las distribuciones de Linux de forma predeterminada, pero casi siempre está incluido en el repositorio de software. Para Ubuntu Linux, se puede usar el siguiente comando para instalar el paquete.
sudo apt-get install dialog
Instala el paquete de diálogo más las bibliotecas necesarias para el sistema.
El formato de las opciones del cuadro es el siguiente
Hay muchos widgets de diálogo. Entre ellos, algunos de ellos son:
Widgets de diálogo
1. Calendario: proporciona un calendario para mostrar la fecha seleccionada
El formato de este widget es
--calendar <text> <height> <width> <day> <month> <year>
El comando que escribimos en el archivo de script es
dialog --calendar 'calendar' 5 50 30 6 2021
Después de ejecutar el script, obtenemos el calendario como se muestra a continuación.
2. Lista de verificación: muestra múltiples entradas donde cada entrada se puede activar o desactivar.
El formato de este widget es
–checklist <texto> <alto> <ancho> <alto de la lista> <etiqueta1> <elemento1> <estado1>…
El comando que escribimos en el archivo de script es
diálogo – lista de verificación ‘lista de verificación’ 15 10 10 ‘manzana’ 5 ‘encendido’ ‘plátano’ 2 ‘apagado’ ‘coco’ 3 ‘encendido’ ‘delta’ 4 ‘apagado’
Después de ejecutar el script, obtenemos la lista de verificación como se muestra a continuación.
3. Formulario: esto le permite crear un formulario con etiquetas y campos de texto para completar.
El formato de este widget es
–form <texto> <alto> <ancho> <alto del formulario> <etiqueta1> <l_y1> <l_x1> <elemento1> <i_y1> <i_x1> <flen1> <ilen1> …
Aquí, flen es la longitud del campo e ilen es la longitud del campo que permite que la entrada se mueva entre campos.
El comando que escribimos en el archivo de script es
cuadro de diálogo -formulario «Por favor ingrese la información» 12 40 4 «Nombre:» 1 1 «» 1 12 15 0 «Edad:» 2 1 «» 2 12 15 0 «ID de correo:» 3 1 «» 3 12 15 0
Después de ejecutar el script, obtenemos el formulario como se muestra a continuación.
4. Indicador: le permite mostrar la ventana de progreso del indicador
El formato de este widget es
--gauge <text> <height> <width> [<percent>]
El comando que escribimos en el archivo de script es
dialog --gauge "progress.." 10 20 40
Después de ejecutar el script, obtenemos la ventana como se muestra a continuación.
5. Cuadro de mensaje: muestra un mensaje y requiere que el usuario seleccione un botón Aceptar
El formato de este widget es
-- msgbox <text> <height> <width>
El comando que escribimos en el archivo de script es
dialog --msgbox "This is a message" 10 25
Después de ejecutar el script, obtenemos el cuadro de mensaje como se muestra a continuación.
6. Fselect: proporciona una ventana de selección de archivos para buscar un archivo.
El formato de este widget es
-- fselect <filepath> <height> < width >
El comando que escribimos en el archivo de script es
dialog --title "fselect" --fselect /documents 15 40
Después de ejecutar el script, obtenemos la ventana como se muestra a continuación.
7. Cuadro de información: muestra un mensaje sin esperar una respuesta.
El formato de este widget es
--infobox <text> <height> <width>
El comando que escribimos en el archivo de script es
dialog --infobox "This is a message" 15 30
Después de ejecutar el script, obtenemos el cuadro de información como se muestra a continuación.
8. Cuadro de entrada: muestra un cuadro de formulario de texto único para la entrada de texto.
El formato de este widget es
--inputbox <text> <height> <width> [<init>]
El comando que escribimos en el archivo de script es
dialog --inputbox "Enter the name" 15 30 'enter here'
Después de ejecutar el script, obtenemos el cuadro de entrada como se muestra a continuación.
9. Inputmenu: este widget proporciona un menú editable.
El formato de este widget es
–inputmenu <texto> <alto> <ancho> <alto del menú> <etiqueta1> <elemento1>…
El comando que escribimos en el archivo de script es
dialog –inputmenu «Editar si es necesario» 12 45 25 1 «hola» 2 «buenos días» 3 «cuídate»
Después de ejecutar el script, obtenemos la ventana para editar como se muestra a continuación.
10. Menú: este widget muestra una lista de selecciones entre las que elegir.
El formato de este widget es
–menu <texto> <alto> <ancho> <alto del menú> <etiqueta1> <elemento1>…
El comando que escribimos en el archivo de script es
diálogo –menú “Elija la opción” 12 45 25 1 “manzana” 2 “plátano” 3 “mango”
Después de ejecutar el script, obtenemos la ventana para editar como se muestra a continuación.
11. Pausa: muestra un medidor que muestra el estado de un período de pausa específico.
El formato de este widget es
--pause <text> <height> <width> <seconds>
El comando que escribimos en el archivo de script es
dialog --pause "pause" 20 40 30
Después de ejecutar el script, obtenemos la ventana como se muestra a continuación.
El temporizador comienza a correr… de los cuales dos imágenes se muestran a continuación
12. Formulario mixto: este widget le permite crear un formulario con etiquetas y campos de texto de diferentes formularios para completar.
El formato de este widget es
–mixedform <texto> <alto> <ancho> <alto del formulario> <etiqueta1> <l_y1> <l_x1> <elemento1> <i_y1> <i_x1> <flen1> <ilen1> <tipo>…
El comando que escribimos en el archivo de script es
dialog –mixedform “Por favor ingrese la información” 12 40 4 “Nombre:” 1 1 “” 1 12 15 0 a “Edad:” 2 1 “” 2 12 15 0 a “ID de correo:” 3 1 “” 3 12 15 0 un
Después de ejecutar el script, obtenemos el formulario como se muestra a continuación.
13. Indicador mixto: le permite mostrar la ventana de progreso del indicador con varios elementos.
El formato de este widget es
--mixedgauge <text> <height> <width> <percent> <tag1> <item1>...
El comando que escribimos en el archivo de script es
dialog --mixedgauge "Gauge box" 10 20 40 app one
Después de ejecutar el script, obtenemos la ventana como se muestra a continuación.
14. Contraseña: este widget muestra un solo cuadro de texto que oculta el texto ingresado.
El formato de este widget es
--passwordbox <text> <height> <width> [<init>]
El comando que escribimos en el archivo de script es
dialog --passwordbox "Password" 10 20
Después de ejecutar el script, obtenemos la ventana como se muestra a continuación.
15. Formulario de contraseña: este widget muestra un formulario con etiquetas y campos de texto ocultos.
El formato de este widget es
–passwordform <texto> <alto> <ancho> <alto del formulario> <etiqueta1> <l_y1> <l_x1> <elemento1> <i_y1> <i_x1> <flen1> <ilen1>…
El comando que escribimos en el archivo de script es
dialog –passwordform “Por favor ingrese la información” 12 40 4 “Contraseña:” 1 1 “” 1 12 15 0 “otp:” 2 1 “” 2 12 15 0 “clave secreta:” 3 1 “” 3 12 15 0
Después de ejecutar el script, obtenemos la ventana como se muestra a continuación.
16. Lista de radio: este widget proporciona un grupo de elementos de menú donde solo se puede seleccionar un elemento.
El formato de este widget es
–radiolist <texto> <alto> <ancho> <alto de lista> <etiqueta1> <elemento1> <estado1>…
El comando que escribimos en el archivo de script es
diálogo –radiolist ‘radiolist’ 15 10 10 ‘apple’ 5 ‘off’ ‘banana’ 2 ‘off’ ‘coffee’ 3 ‘off’ ‘postre’ 4 ‘off’
Después de ejecutar el script, obtenemos la ventana como se muestra a continuación.
17. Cuadro de programa: este widget le permite mostrar la salida del comando en el cuadro de diálogo.
El formato de este widget es
--prgbox <text> <command> <height> <width>
El comando que escribimos en el archivo de script es
dialog --prgbox "command" "ls" 10 30
Después de ejecutar el script, obtenemos la ventana como se muestra a continuación.
18. Cuadro de texto: este widget muestra el contenido de un archivo en una ventana de desplazamiento
El formato de este widget es
--textbox <file> <height> <width>
El comando que escribimos en el archivo de script es
diálogo –cuadro de texto /etc/hosts 10 60
Después de ejecutar el script, obtenemos la ventana como se muestra a continuación.
19. Tailbox: este widget muestra el texto de un archivo en una ventana de desplazamiento usando el comando tail.
El formato de este widget es
--tailbox <file> <height> <width>
El comando que escribimos en el archivo de script es
dialog --tailbox /etc/hosts 10 60
Después de ejecutar el script, obtenemos la ventana como se muestra a continuación.
20. Sí, no: este widget proporciona un mensaje simple con los botones Sí y No.
El formato de este widget es
--yesno <text> <height> <width>
El comando que escribimos en el archivo de script es
dialog --yesno "Do you want run the command" 10 30
Después de ejecutar el script, obtenemos la ventana como se muestra a continuación.
Publicación traducida automáticamente
Artículo escrito por deviprajwala y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA