Comment créer des scripts de shell graphiques simples avec Zenity sous Linux

Table des matières:

Comment créer des scripts de shell graphiques simples avec Zenity sous Linux
Comment créer des scripts de shell graphiques simples avec Zenity sous Linux

Vidéo: Comment créer des scripts de shell graphiques simples avec Zenity sous Linux

Vidéo: Comment créer des scripts de shell graphiques simples avec Zenity sous Linux
Vidéo: Créer votre clé USB Multiboot avec Ventoy ! (Windows, Ubuntu, Debian, Antivirus, Sauvegarde...) - YouTube 2024, Avril
Anonim
Zenity ajoute des interfaces graphiques aux scripts de shell avec une seule commande. Les scripts shell sont un excellent moyen d’automatiser des tâches répétitives, mais ils sont normalement limités au terminal - Zenity les fait sortir du terminal et sur votre bureau.
Zenity ajoute des interfaces graphiques aux scripts de shell avec une seule commande. Les scripts shell sont un excellent moyen d’automatiser des tâches répétitives, mais ils sont normalement limités au terminal - Zenity les fait sortir du terminal et sur votre bureau.

Nous avons déjà présenté les scripts shell. Il n’est pas nécessaire d’être un programmeur pour se familiariser avec les scripts shell: ils requièrent un minimum de connaissances des commandes de terminal Linux.

Obtenir de la zenity

Zenity est livré avec Ubuntu par défaut. Si vous utilisez un dérivé d'Ubuntu, tel que Kubuntu, vous devrez peut-être l'installer manuellement à l'aide de la commande suivante:

sudo apt-get install zenity

Zenity fait partie de GNOME, il devrait donc déjà être inclus sur les distributions Linux qui utilisent le bureau GNOME. Vérifiez votre gestionnaire de paquets pour le zenity forfait si vous ne l'avez pas.

Utiliser Zenity

Vous pouvez jouer avec Zenity depuis le terminal. Supposons que vous souhaitiez créer une fenêtre d’erreur en cas de problème avec votre script shell. Voici un exemple de commande que vous pouvez utiliser:

zenity –error –title=”An Error Occurred” –text=”A problem occurred while running the shell script.”

Exécutez la commande et vous verrez une fenêtre avec le message.
Exécutez la commande et vous verrez une fenêtre avec le message.
Placez cette commande unique dans votre script shell au bon endroit et vous obtiendrez un message d'erreur graphique. Vous pouvez également utiliser des variables pour inclure plus d'informations sur l'erreur.
Placez cette commande unique dans votre script shell au bon endroit et vous obtiendrez un message d'erreur graphique. Vous pouvez également utiliser des variables pour inclure plus d'informations sur l'erreur.

Disons que vous voulez poser une question par oui ou par non. Vous pouvez utiliser une commande comme celle-ci:

zenity –question –title=”Query” –text=”Would you like to run the script?”

Vous pouvez intercepter les réponses oui ou non dans votre script shell et exécuter différentes commandes en fonction du bouton sur lequel l'utilisateur clique.
Vous pouvez intercepter les réponses oui ou non dans votre script shell et exécuter différentes commandes en fonction du bouton sur lequel l'utilisateur clique.
Il existe également une boîte de dialogue de saisie de texte:
Il existe également une boîte de dialogue de saisie de texte:

zenity –entry –title=”Favorite Website” –text=”What is your favorite website?”

Saisissez l’utilisateur dans un script shell et vous pouvez le stocker sous forme de variable.
Saisissez l’utilisateur dans un script shell et vous pouvez le stocker sous forme de variable.
Il existe également un sélecteur de fichiers, un calendrier et d’autres types de dialogues. Pour obtenir une liste complète des types de dialogue et de leurs options, consultez la page de manuel de Zenity.
Il existe également un sélecteur de fichiers, un calendrier et d’autres types de dialogues. Pour obtenir une liste complète des types de dialogue et de leurs options, consultez la page de manuel de Zenity.

Un exemple de script

Essayons d’utiliser Zenity pour créer un script shell simple. Avec seulement trois commandes, nous pouvons créer un programme de minuterie graphique:

#!/bin/bash # This script asks the user for a time, waits the specified amount # of time, and shows an alert dialog.

TIME=$(zenity –entry –title=”Timer” –text=”Enter a duration for the timer.

Use 5s for 5 seconds, 10m for 10 minutes, or 2h for 2 hours.”)

sleep $TIME

zenity –info –title=”Timer Complete” –text=”The timer is over.

It has been $TIME.”

Image
Image

Nous utilisons quelques astuces supplémentaires ici. Nous obtenons la valeur de la variable TIME de la première commande zenity et l'envoyons à la commande sleep. Nous utilisons également / n créer de nouvelles lignes de texte dans les boîtes de dialogue zenity.

Après avoir enregistré le script shell et exécuté le chmod + x commande pour lui donner des autorisations exécutables, nous pouvons le lancer.

Image
Image

Entrez une durée et le script utilisera la norme dormir commande pour décompter en arrière-plan. Lorsque le compte à rebours de la commande de veille est terminé, le script affiche le message d’information zenity.

Vous pouvez créer un raccourci sur le bureau ou sur un panneau pour ce script et l'exécuter sans même toucher au terminal.
Vous pouvez créer un raccourci sur le bureau ou sur un panneau pour ce script et l'exécuter sans même toucher au terminal.

Cela ne fait que gratter la surface de ce que vous pourriez faire avec zenity; vous pourriez l'utiliser pour créer des programmes beaucoup plus compliqués. Si vous recherchez plus d’informations sur les scripts shell, consultez notre guide sur l’utilisation des boucles for dans les scripts shell.

Conseillé: