Créer un menu interactif en Bash : guide complet pour les débutants

Présentation
Dans ce tutoriel, nous allons apprendre à créer un menu interactif en Bash en utilisant l’instruction “select”, mais aussi “read”. L’instruction “select” est idéale pour ce cas d’usage, car elle facilite la sélection d’options par l’utilisateur.
Nous allons illustrer cette méthode par la création d’un menu permettant à l’utilisateur de choisir d’afficher différentes informations au sujet de la machine locale : la version du système, l’espace disque, la configuration IP et la date du dernier redémarrage de la machine. Pour cette démonstration, Ubuntu via WSL est utilisé, mais il suffit de disposer de Bash.
Rappel sur la structure de base d’un script Bash
Avant de plonger dans la création du menu interactif, revoyons la structure de base d’un script Bash. Un script Bash commence par le shebang qui indique que le script doit être exécuté avec l’interpréteur Bash. Ensuite, nous ajoutons nos instructions à exécuter.
Pour rappel, voici le lien vers notre introduction au Bash, ainsi que le lien vers l’article sur la saisie utilisateur avec “read”.
L’instruction “select” permet de présenter un menu d’options à l’utilisateur et de “capturer” son choix, c’est-à-dire l’option qu’il a choisie.
Lors de l’utilisation de “select” pour créer un menu interactif, Bash affiche une liste numérotée avec les options disponibles. Après avoir affiché les options, il utilise la valeur de “PS3” comme invite pour demander à l’utilisateur de faire une sélection.
Pour ajouter de la couleur à votre menu interactif en Bash, vous pouvez utiliser les codes d’échappement ANSI. Ces codes permettent de changer la couleur du texte dans le terminal, et donc de changer la couleur du texte retourné par notre script dans la console.
Ce nouveau script fonctionne de la même façon que la précédente version, à la différence que désormais, nous avons des couleurs.
Puisque nous utilisons la commande “echo” pour créer ce menu, nous pouvons aussi définir les couleurs du texte comme bon nous semble. Enfin, une boucle while est utilisée pour revenir à la sélectionner d’une tâche de façon systématique, jusqu’à ce que l’utilisateur décide de quitter.
Conclusion
Voilà, nous avons appris à créer un menu interactif en Bash en utilisant l’instruction “select”, mais aussi le “read”, afin d’afficher des informations basiques à propos de la machine locale. Désormais, à vous de jouer et de vous inspirer de cet exemple pour créer le menu interactif de votre choix ! Ce sera l’occasion de rendre certains scripts beaucoup plus conviviaux, notamment lorsqu’ils sont utilisés comme des outils de façon interactive.
Source : www.it-connect.fr