Partage

Reprenez le contrôle à l'aide de Linux !

Problème avec les conditions

13 juillet 2018 à 15:25:40

Bonjour tout le monde,

Je vous sollicite aujourd'hui car j'ai un "petit" soucis sur mon script, comme l'indique le titre j'ai commencé le cours pour débutant et j'en suis aux conditions, je fait un petit script histoire de voir si j'ai bien tout compris mais j'ai une erreur que nous ne comprenons pas avec mes collègues, le script ne marche pas sur mon poste Ubuntu 16.04, sur celui de mon collègue en Ubuntu 14.04 non plus, il marche juste sur un 3ème poste sous Debian 9

Voici ci joint le code + résultat dans mon bash, la 1ère question et 1ère réponse aucun soucis, seulement à la réponse de la 2ème question que ça déconne

  1 #!/bin/bash
  2 read -p " Quelle commande permet de créer un fichier vide ? " -n "5" repA 
  3 if [ $repA = touch ]
  4   then
  5      echo -e  "\nBravo !"
  6      echo " Question N°2 : "
  7   else
  8      echo -e  "\n###########"
  9      echo     "#GAME OVER#"
 10      echo -e  "###########\n"
 11  fi  
 12 read -p "Combien font 12 + 6 ? " -n "2" repB
 13 if [ $repB -eq 18 ]
 14  then   
 15      echo -e  "\nBravo !"
 16      echo "Question N°3 : "
 17   else 
 18      echo -e  "\n###########"
 19      echo     "#GAME OVER#"
 20      echo -e  "###########\n"
 21  fi           
+ read -p ' Quelle commande permet de créer un fichier vide ? ' -n 5 repA
 Quelle commande permet de créer un fichier vide ? touch+ '[' touch = touch ']'
+ echo -e '\nBravo !'

Bravo !
+ echo ' Question N°2 : '
 Question N°2 : 
+ read -p 'Combien font 12 + 6 ? ' -n 2 repB
Combien font 12 + 6 ? 18+ '[ 18' -eq 18 ']'
./script.sh: ligne 13: [ 18 : commande introuvable
+ echo -e '\n###########'

###########
+ echo '#GAME OVER#'
#GAME OVER#
+ echo -e '###########\n'
###########




-
Edité par Skratsh 13 juillet 2018 à 15:25:51

13 juillet 2018 à 15:32:07

salut,

j'imagine qu'il y a un espace insécable dans la commande...

pour le vérifier :

grep '\$repB' ./script.sh | cat -v



« un problème clairement exposé est à moitié résolu. » | je ne réponds pas aux questions techniques par MP.
13 juillet 2018 à 15:40:06

Effectivement, entre le [ et $repB .... Merci beaucoup de ta réponse + solution si rapide en tout cas !

Reprenez le contrôle à l'aide de Linux !

× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
  • Editeur
  • Markdown