Comment puis-je créer une boîte de message à partir de la ligne de commande, soit des boîtes de message GUI ou des boîtes de message affichées à l'intérieur du terminal ?
Il serait également intéressant de pouvoir récupérer une saisie simple de l'utilisateur, par exemple une saisie donnée avec des boutons radio (oui/non, OK, etc).
Réponse acceptée :
Pour une "boîte autour d'un message" standard, utilisez des boxes
:
echo 'This is a test' | boxes
boxes
ressemblera à ceci (le premier. Le second est une coutume comme cowsay
):
Si vous voulez dire une boîte d'alerte, utilisez notify-send
:
notify-send 'title' 'message'
notify-send
ressemble à ceci :
Vous pouvez également utiliser zenity
pour une fenêtre popup :
zenity --error --text="An error occurred!" --title="Warning!"
Zenity est plus graphique et a plus d'options, comme faire apparaître la fenêtre comme une question, en utilisant :
zenity --question --text="Do you wish to continue/?"
ou même des barres de progression, en utilisant :
find /usr | zenity --progress --pulsate --auto-close --auto-kill --text="Working..."
zenity
ressemble à ceci :
Ou utilisez la dialog
, pour une boîte de message en ligne de commande uniquement :
dialog --checklist "Choose OS:" 15 40 5
1 Linux off
2 Solaris on
3 'HP UX' off
4 AIX off
dialog
ressemble à ceci :
Une autre option est whiptail
:
whiptail --title "Example Dialog" --msgbox "This is an example of a message box. You must hit OK to continue." 8 78
whiptail
ressemble à ceci :
Et si vous êtes vraiment fou, utilisez les toilet
:
toilet -F border -F gay "CRAZY"
toilet
ressemble à ceci :
- Source des boîtes
- Source de la boîte de dialogue 1
- Source de la boîte de dialogue 2
- Source pour zenity 1
- Source pour zenity 2
- Source du fouet 1
- Source pour whiptail 2
- Source pour toilettes