Test d’égalité entre deux chaînes Test:sur les chaînes de caractères
Objectif
Tester si une variable est strictement égale à une
valeur.
Exemple
La variable choix a-t-elle
pour valeur "oui" ?
Première méthode
(ksh, bash)
Utilisation de la commande de test [[ ]] :
$ [[ $choix = oui ]] && echo ’$choix vaut oui’
(cf. Les bases de la programmation shell -
Exécution de tests)
Deuxième méthode
Utilisation de la commande de test [ ] :
$ [ "$choix" = oui ] && echo ’$choix vaut oui’
Contrairement à la commande [[ ]],
la commande [ ] provoque
une erreur si l’expression $choix est
vide et non placée entre guillemets (les guillemets n’empêchant
pas la substitution de la variable).
(cf. Les bases de la programmation shell -
Exécution de tests)
Troisième méthode
Utilisation de la structure de contrôle case :
$ case $choix in
> oui) echo ’$choix vaut oui’ ;;
> *) ...
> esac
(cf. chapitre Les bases de la programmation
shell - Les structures de contrôle)
Quatrième méthode
Utilisation de la commande expr et d’une expression régulière
:
$ expr $choix : ’oui$’ >/dev/null && echo ’$choix vaut oui’
Avec expr,
le caractère ˆ est
implicite au niveau de l’expression régulière (équivalent à ’ˆoui$’).
(cf. chapitre ...