Création de menu dans le script shell (Commande Linux SELECT)

Création de menu dans le script shell (Commande Linux SELECT)

La construction de bash select est utilisée pour créer un menu numéroté à partir de la liste des éléments. Cela est utile pour les scripts shell qui nécessitaient une sélection des utilisateurs sur plusieurs éléments.

Syntaxe

Le sélectionner La déclaration a une syntaxe similaire à celle 'pour boucle' et c'est:

Sélectionnez l'élément dans [Liste] Do [Commandes] fait 

Ici, la liste peut être un tableau, une gamme de nombres, une série de chaînes séparées par l'espace, la sortie d'une commande, etc. Et lorsque la construction sélectionnée sera invoquée, chaque élément de la liste sera imprimé avec une séquence numérotée. La construction continuera d'exécuter jusqu'à ce que la commande de pause soit exécutée.

Exemple de sélection de bash

Comprenons la construction sélectionnée avec un exemple. Ici, nous avons créé un script bash nommé marque.shot et la commande SELECT est utilisée pour récupérer les données de la liste en tant que menu. Le script imprimera d'abord le nom de toutes les marques de la liste, puis il demandera à l'utilisateur de choisir l'un d'eux et il imprimera le nom de la marque sélectionnée.

#!/ Bin / Bash Select Brand dans Apple Google Microsoft Amazon Meta Do Echo "Vous avez choisi la marque $"
123456#!/ Bin / Bash Select Brand dans Apple Google Microsoft Amazon Metado Echo "Vous avez choisi la marque $"

Exécutez le script avec 'marque de bash.shot'. Vous verrez la sortie suivante.

Sortie 1) Apple 2) Google 3) Microsoft 4) Amazon 5) Meta #? 1 Vous avez choisi Apple #? 3 Vous avez choisi Microsoft #? ^ C 

Appuyez sur Ctrl + C pour quitter.

Un autre exemple

Prenons un autre exemple de la construction sélectionnée pour voir comment cela fonctionne avec une déclaration de cas.

Ici, nous allons créer un nouveau fichier nommé sélectionner.shot Et une fois que nous exécuterons le fichier, l'utilisateur sélectionnera n'importe quel élément, puis l'instruction de cas correspondra à l'élément avec la valeur de cas. Si aucune valeur n'est appariée, alors 'Entrée invalide' Will imprimer.

#!/ bin / bash echo "quel système d'exploitation aimez-vous?"Sélectionnez le système d'exploitation dans Ubuntu Linuxmint Windows8 Windows7 Windowsxp Do Case $ OS dans" Ubuntu "|" Linuxmint ") Echo" J'utilise également $ OS.";;" windows8 "|" windows10 "|" windowsxp ") echo" Pourquoi n'essayez-vous pas Linux?";; *) Echo" Entrée non valide."Break ;; esac fait
12345678910111213141516171819#!/ bin / bash echo "quel système d'exploitation aimez-vous?"Sélectionnez OS dans Ubuntu Linuxmint Windows8 Windows7 WindowsxpDocase $ OS dans" Ubuntu "|" Linuxmint ") Echo" J'utilise également $ OS.";;" windows8 "|" windows10 "|" windowsxp ") echo" Pourquoi n'essayez-vous pas Linux?";; *) Echo" Entrée non valide."Break ;; esacdone

Maintenant, exécutez le script avec Sélection de bash.shot Et vous verrez la sortie suivante.

Sortie 1) Ubuntu 3) Fedora 5) Windows7 2) Linuxmint 4) Windows8 6) WindowsXP #? 1 J'utilise également Ubuntu. #? 2 J'utilise également Linuxmint. #? 4 Pourquoi n'essayez-vous pas Linux? #? 7 Entrée non valide. 

Conclusion

Ce guide explique l'utilisation de la commande SELECT dans les scripts bash.