Je créé ce sujet car je n'ai rien trouvé d'équivalent sur ce site.

J'ai une toute jeune expérience du bash mais j'ai déjà rencontré un de ces pièges.

Bash ne supporte pas les if (elif inclus) et fonctions vides, il y faut au moins une instruction.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
MaFonction {
}
 
if maCondition ; then
fi
Vous me direz, mais quel intérêt d'avoir une fonction ou un if vide ?
Aucun, sauf si on veut simplement faire le prototype et avancer plus loin dans une autre partie du code, pour y revenir ultérieurement.
Après on peut discuter du bien fondé d'une telle démarche, mais c'est un autre débat

Bref, pour pallier à cela il suffit d'ajouter une instruction qui ne modifie pas le déroulement du code, true ou false semble tout indiqué dans la plupart des cas.

Je précise que je n'ai trouvé aucune info à ce sujet dans le man de bash, et ça me semble tout sauf évident, j'ai jamais rencontré cela dans un autre langage script, personnellement j'ai perdu un temps fou à trouver cette cause, je pensais à tout sauf à cela.

Si vous pouviez faire part d'éventuelles autres infos de ce genre ici (si il y en a)
J'ai hésité à poster dans le sujet "truc et astuces", mais je trouvais que le sujet était différent, si le staff décide que ce n'est pas le cas, alors amen.