Diàlegs a l’entorn gràfic des d’un Script Bash

Necessitem zenity…

apt-get install zenity

Tenim diferents formats de diàleg…

zenity --info --text="Sóc un diàleg d'informació" --width=500
zenity --error --text="Sóc un diàleg d'error" --title="Error" --width=500 --width=200
zenity --question --text="Sóc un diàleg de pregunta?" --width=200
zenity --warning --title="Warning" --text="Sóc un diàleg d'advertència" --width=200
zenity --notification --text "Sóc una notificació del sistema"

Podem interactuar amb l’usuari:

#/bin/bash
if zenity --question --title="Pregunta..." --text="Si o no?" --no-wrap
    then
    zenity --info --title="Ok" --text="Has dit que si" --no-wrap
    else
    zenity --info --title="KO" --text="Has dit que no" --no-wrap
fi

Altres intereccions predeficindes…

zenity --calendar
zenity --entry --title "Informació del l'usuari" --text "Si et plau, introdueix el teu nom"
zenity --list  --title "Escull Processador" --radiolist  --column "ID" --column="Nom" 1 AMD 2 Intel
zenity --list --title "Paquets" --list  --text "escull els paquets" --checklist --column "id"  --column "Nom" 1 "Google Chrome" 2 "VLC" 3 "Firefox" 4 "GIMP"
zenity --color-selection --show-palette
zenity --file-selection --multiple --filename "/"

També podem mostrar barres de progrés, però això ja ens ho hem de mirar amb més calma…

zenity --help-progress

Exemple absurd…

#!/bin/bash
if zenity --question --title="Confirmació" --text="Vols continuar perdent el temps?" --no-wrap;
then
        zenity --info --title="Success" --text="Seguim doncs..." --no-wrap;
else
        zenity --info --title="No Success" --text="Adéu!" --no-wrap;
        exit;
fi

variable_text="$(zenity --entry --title "Text" --text "Introdueix el text que vols mostrar...")"

zenity --warning --title="Aquí el tens" --text=$variable_text --width=200
2021-04-23T11:17:03+02:0023 04 2021|bash, linux|