Ksh / problème de condition

Résolu/Fermé
rojina2903 Messages postés 96 Date d'inscription mercredi 18 juin 2008 Statut Membre Dernière intervention 5 juin 2009 - 18 juin 2008 à 13:47
rojina2903 Messages postés 96 Date d'inscription mercredi 18 juin 2008 Statut Membre Dernière intervention 5 juin 2009 - 20 juin 2008 à 11:18
Bonjour,

Je suis débutante en ksh et je bloque sur le "if"

le bout du code qui cause probleme est:

echo Confirirmation des parametres du script (n/y)
read rep

if[ "$rep"="n" ]
then
echo Arret du script
fi


quand j'execute j'ai cette erreur:

syntax error: 'then' unexpected

si je met un ";" après le "if" j'obtiens:

syntax error: 'fi' unexpected

et la meme erreur si je met deux crochés "[["


Merci d'avance pour votre assistance

10 réponses

marc[i1] Messages postés 2573 Date d'inscription vendredi 1 avril 2005 Statut Contributeur Dernière intervention 6 septembre 2008 382
18 juin 2008 à 13:49
Salut,

un petit espace aprés if serait de bon aloi :)
0
rojina2903 Messages postés 96 Date d'inscription mercredi 18 juin 2008 Statut Membre Dernière intervention 5 juin 2009 13
18 juin 2008 à 13:57
Merci marc[i1]

j'ai essayé avec l'espace après le if mais ça marche toujours pas, il n'affiche plus d'erreur mais execute le traitement meme quand "rep" est differente de "n"
0
marc[i1] Messages postés 2573 Date d'inscription vendredi 1 avril 2005 Statut Contributeur Dernière intervention 6 septembre 2008 382
18 juin 2008 à 14:32
le soucis vient de 'then'

relis bien ton script, tu verras qu'il est inexploitable :)
traduit ton script en algo,ça devrais te sauter au yeux :)
0
rojina2903 Messages postés 96 Date d'inscription mercredi 18 juin 2008 Statut Membre Dernière intervention 5 juin 2009 13
18 juin 2008 à 14:39
je vais essayer de trouver

merci pour votre aide
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rojina2903 Messages postés 96 Date d'inscription mercredi 18 juin 2008 Statut Membre Dernière intervention 5 juin 2009 13
20 juin 2008 à 10:14
bonjour à toutes et à tous

je relance ma question puisque je bloque toujours la dessus

merci d'avance
0
marc[i1] Messages postés 2573 Date d'inscription vendredi 1 avril 2005 Statut Contributeur Dernière intervention 6 septembre 2008 382
20 juin 2008 à 10:18
if [ "$rep"="n" ] 
echo Arret du script 
fi
0
rojina2903 Messages postés 96 Date d'inscription mercredi 18 juin 2008 Statut Membre Dernière intervention 5 juin 2009 13
20 juin 2008 à 10:35
ça ne marche toujours pas

j'ai crée un petit script pour tester

#!/usr/bin/ksh

echo Saisir un mot
read mot

if[ "$mot"="bonjour" ] then
echo perdu
fi


et ça ne marche pas, ça m'affiche: : if[: not found
syntax error at line 10 : 'fi' unexpected
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
20 juin 2008 à 11:16
Salut,

Il faut des espaces avant et après les crochets ainsi qu'autour du signe égal (=) !!!
0
rojina2903 Messages postés 96 Date d'inscription mercredi 18 juin 2008 Statut Membre Dernière intervention 5 juin 2009 13
20 juin 2008 à 11:17
c bon j'ai réussi à faire

j'ai fais:

if [ "$mot" = "bonjour" ]; then
echo perdu
fi

merci et à très bientot
0
rojina2903 Messages postés 96 Date d'inscription mercredi 18 juin 2008 Statut Membre Dernière intervention 5 juin 2009 13
20 juin 2008 à 11:18
merci jipicy
0