« Programmation Bash/Structures conditionnelles » : différence entre les versions

Contenu supprimé Contenu ajouté
Tavernierbot (discussion | contributions)
m Robot : Changement de type cosmétique
Guillaumito (discussion | contributions)
ajout de contenu...
Ligne 4 :
 
== <code>if</code> ==
 
=== Test simple ===
L'instruction <code>if</code> permet d'effectuer des opérations si une condition est réalisée.
<source lang="bash">
Ligne 11 ⟶ 13 :
fi
</source>
Dans ce cas <code>condition</code> est une commande et l'expression conditionelle est exécutée si son code de retour vaut zéro. Par exemple
<source lang="bash">
if pkg-config gtk+-2.0
then
echo "gtk+ est installé sur votre système"
fi
</source>
exécute le programme <code>pkg-config</code> avec le paramètre <code>gtk+-2.0</code> et exécute <code>echo "gtk+ est installé sur votre système"</code> si la valeur de retour de <code>pkg-config</code> est zéro. Il est bien sur possible d'utiliser des enchainements de commandes, ainsi :
<source lang="bash">
if pkg-config gtk+-2.0 && pkg-config gtkglext-1.0
then
echo "gtk+ et gtkglext sont installés sur votre système
fi
</source>
n'affichera quelque chose que si les deux appels à <code>pkg-config</code> ont un code de retour à 0.
 
Comme vu précédemment, <code>test</code> et <code>[</code> renvoient un code égal à zéro si une condition est vraie et différent de zéro sinon, il est donc possible de les utiliser avec une instrution <code>if</code> :
<source lang="bash">
if [ "x$mavariable" = "xunevaleur" ]
then
echo "ma variable a la bonne valeur"
fi
</source>
 
=== Test avancé ===
L'instruction <code>if</code> peut aussi inclure une instruction else permettant d'exécuter des instructions dans le cas ou la condition n'est pas réalisée.
<source lang="bash">