Mon code:[: opérateur inattendu dans la programmation shell
#!/bin/sh
#filename:choose.sh
read choose
[ "$choose" == "y" -o "$choose" == "Y" ] && echo "Yes" && exit 0
[ "$choose" == "n" -o "$choose" == "N" ] && echo "No" && exit 0
echo "Wrong Input" && exit 0
Mais quand j'exercerai me invite du terminal
sh ./choose.sh
que
[: 4: n: :Unexpected operator
[: 5: n: :Unexpected operator
Y at-il une erreur dans mon script bash ? Merci!
Lorsque j'ai exécuté le même code sous Linux et dans cygwin, je n'obtenais aucune erreur – Raghuram
Cygwin a probablement alias 'sh' à' bash'. Certaines distributions n'offrent plus un vrai 'sh'. Bien que certains diront (et je suis plutôt d'accord) que si vous écrivez un script pour être portable, écrivez-le dans 'sh' au lieu de' bash'. – Wolph
Mon problème était que j'avais besoin de 'source foobar.sh' pas'./Foobar.sh' – jsta