Quand on code en Bash une question revenant souvent est : comment faire un opérateur ternaire ?

Pour les novices cela permet de raccourcir l'écriture du bloc conditionnel suivant :

if [ "$var" = "ok" ]; then
    call_function_ok
else
    call_function_ko
fi

... Autrement dit : si test vrai exécute instruction1 sinon exécute instruction2

Le but ici est de raccourcir l'écriture de ce bloc via l'utilisation d'un opérateur ternaire.

Si d'autres langages le formalisent en général de la manière suivante : ( test ? instruction1 : instruction2 )

... En Bash la syntaxe est différente. Si on reprend notre premier exemple cela donnera :

[ "$var" = "ok" ] && call_function_ok || call_function_ko

 

Tag(s) : #bash
Partager cet article
Repost0
Pour être informé des derniers articles, inscrivez vous :