Tests numériques Test:sur les nombres
Objectif
Effectuer des tests numériques sur
des variables contenant des nombres.
Exemple
Tester si la variable nombre est inférieure à 100.
Première méthode
(ksh, bash)
Utiliser la commande de test [[ ]] :
$ [[ $nombre -lt 100 ]] && echo ’$nombre < 100’
Attention à ne pas utiliser les opérateurs =,
!=, < et > de la commande [[ ]] qui
font des tests lexicographiques (comparaison de chaînes)
et non numériques.
(cf. chapitre Les bases de la programmation
shell - Exécution de tests)
Deuxième méthode
Utiliser la commande de test [ ] :
$ [ $nombre -lt 100 ] && echo ’$nombre < 100’
Attention à ne pas utiliser les opérateurs = et
!= de la commande [ ] qui
font des tests lexicographiques (comparaison de chaînes)
et non numériques.
(cf. chapitre Les bases de la programmation
shell - Exécution de tests)
Troisième méthode
(ksh, bash)
Utiliser la commande arithmétique (( )) :
$ (( $nombre < 100 )) && echo ’$nombre < 100’
(cf. chapitre Les bases de la programmation
shell - L’arithmétique)
Quatrième méthode
Utiliser la commande expr :
$ expr $nombre \< 100 > /dev/null && echo ’$nombre < 100’
La commande expr n’est
pas la plus confortable car il faut protéger les caractères
spéciaux du shell et éliminer un affichage inutile.
(cf. ...