33.4. Tests et comparaisons : alternatives

Pour les tests, la construction [[ ]] peut être plus appropriée que [ ]. De même, les comparaisons arithmétiques pourraient bénéficier de la construction (( )).

a=8

# Toutes les comparaisons ci-dessous sont équivalentes.
test "$a" -lt 16 && echo "oui, $a < 16"         # "liste et"
/bin/test "$a" -lt 16 && echo "oui, $a < 16"
[ "$a" -lt 16 ] && echo "oui, $a < 16"
[[ $a -lt 16 ]] && echo "oui, $a < 16"          # Placer les variables entre
(( a < 16 )) && echo "oui, $a < 16"             # [[ ]] et (( )) n'est pas
                                                # nécessaire.

cite="New York"
# Encore une fois, toutes les comparaisons ci-dessous sont équivalentes.
test "$cite" \< Paris && echo "Oui, Paris est plus grand que $cite"
    # Ordre ASCII du plus grand.
/bin/test "$cite" \< Paris && echo "Oui, Paris est plus grand que $cite"
[ "$cite" \< Paris ] && echo "Oui, Paris est plus grand que $cite"
[[ $cite < Paris ]] && echo "Oui, Paris est plus grand que $cite"
    # Pas besoin de mettre $cite entre double quote.

# Merci, S.C.