If en bash
Aller à la navigation
Aller à la recherche
J'oublie toujours comment on fait un IF en bash. Je ne dois pas le faire assez souvent et, de plus c'est assez exotique.
Le cas typique est le test d'un code retour:
cat file.txt
if [[ $? == 0 ]]; then
echo "success $?"
elif [[ $? == 1 ]]; then
echo "error $?"
else
echo "very strange error $?"
fi
Attention aux espaces dans la clause [[ ]] il doit y en avoir après [[ et avant ]] mais aussi autour des opérateurs (ici ==)
Les opérateurs sont les classiques ==, !=, <, >=, et <= pour ce qui est de nombres et -eq, -ne, -lt, -le, -gt et -ge, pour leur équivalant en "string".
| POur ceux qui font du perl c'est exactement l'inverse. == pour les chaines et eq pour les nombres. |