Stations de travail en ligne OnWorks Linux et Windows

Logo

Hébergement gratuit en ligne pour les postes de travail

<Précédent | Table des matières | Suivant>

Motifs

Les modèles utilisés par maisons sont les mêmes que ceux utilisés par l'expansion du nom de chemin. Les motifs se terminent par un caractère ")". Voici quelques modèles valides :


Tableau 31- 1 : Exemples de modèles de cas


Description du motif

Description du motif

a) Correspond si mot est égal à « un ».


image

[[:alpha:]]) Correspond si mot est un seul caractère alphabétique.


image

???) Correspond si mot fait exactement trois caractères.


image

*.SMS) Correspond si mot se termine par les caractères « .txt ».


image

*) Correspond à n'importe quelle valeur de mot. Il est recommandé de l'inclure comme dernier motif dans un maisons commande, pour attraper toutes les valeurs de mot qui ne correspondait pas à un modèle précédent ; c'est-à-dire pour intercepter toutes les valeurs invalides possibles.


image


Voici un exemple de modèles au travail :


#! / Bin / bash

read -p "enter word > " case $REPLY in

[[:alpha:]]) echo "est un seul caractère alphabétique." ;; [ABC][0-9]) echo "est A, B ou C suivi d'un chiffre." ;;

???) echo "comporte trois caractères." ;;

*.txt) echo "est un mot se terminant par '.txt'" ;;

*) echo "est autre chose." ;; esac

#! / Bin / bash

read -p "enter word > " case $REPLY in

[[:alpha:]]) echo "est un seul caractère alphabétique." ;; [ABC][0-9]) echo "est A, B ou C suivi d'un chiffre." ;;

???) echo "comporte trois caractères." ;;

*.txt) echo "est un mot se terminant par '.txt'" ;;

*) echo "est autre chose." ;; esac


Il est également possible de combiner plusieurs motifs en utilisant le caractère barre verticale comme séparateur. Cela crée un modèle conditionnel « ou ». Ceci est utile pour des choses telles que la gestion des caractères majuscules et minuscules. Par exemple:



#! / Bin / bash

# case-menu : un programme d'information système piloté par menu clair

écho "

Veuillez sélectionner:


A. Afficher les informations système

B. Afficher l'espace disque

C. Afficher l'utilisation de l'espace domestique

Q. Quitter "

read -p "Entrer la sélection [A, B, C ou Q] > "


cas $REPLY dans

q|Q) echo "Programme terminé." sortir

;;

un|A) echo "Nom d'hôte : $HOSTNAME"

;;

b|B) df -h

;;

c|C) if [[ $(id -u) -eq 0 ]] ; alors

echo "Utilisation de l'espace d'accueil (tous les utilisateurs)" du -sh /home/*

d'autre

echo "Utilisation de l'espace domestique ($USER)" du -sh $HOME

fi

#! / Bin / bash

# case-menu : un programme d'information système piloté par menu clair

écho "

Veuillez sélectionner:


A. Afficher les informations système

B. Afficher l'espace disque

C. Afficher l'utilisation de l'espace domestique

Q. Quitter "

read -p "Entrer la sélection [A, B, C ou Q] > "


cas $REPLY dans

q|Q) echo "Programme terminé." sortir

;;

un|A) echo "Nom d'hôte : $HOSTNAME"

;;

b|B) df -h

;;

c|C) if [[ $(id -u) -eq 0 ]] ; alors

echo "Utilisation de l'espace d'accueil (tous les utilisateurs)" du -sh /home/*

d'autre

echo "Utilisation de l'espace domestique ($USER)" du -sh $HOME

fi


;;

*) echo "Entrée invalide" >&2 sortie 1

;;

Esac

;;

*) echo "Entrée invalide" >&2 sortie 1

;;

Esac


Ici, nous modifions le cas-menu programme pour utiliser des lettres au lieu de chiffres pour la sélection de menu. Remarquez comment les nouveaux modèles permettent la saisie de lettres majuscules et minuscules.


Meilleur système d'exploitation Cloud Computing chez OnWorks :