Cygwin

Résolu
nouenoue Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -  
 4pat -
Bonjour à tous
J'ai installé CygWin sur mon PC sous windws xp pour exécuter des script Shell.
J'ai donc écrit un script simple test.sh; mon problème c'est que lors d'exucution il m'affiche un message d'erreur: syntax error near unexpected token 'fi', alors si quelqu'un à une idée je le remercie.
A voir également:
  • Cygwin
  • Cygwin - Télécharger - Édition & Programmation

6 réponses

lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Salut,

execute le script avec la commande
sh -vx ton_script.sh
et affiche ici ce que vois
1
nouenoue Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   1
 
sh -vx ton_script.sh
Administrateur@a ~
$ sh -vx test2.sh
#!/bin/bash
if [ $# = 2 ]
then
echo "bonjour1 $2 $1 "
else
echo "syntaxe $0"
fi
test2.sh: line 7: syntax error near unexpected token `fi'
test2.sh: line 7: `fi'
Administrateur@a ~
$
0
nouenoue Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   1
 
j ai essayé avec la syntaxe suivante :
if [ $# = 2 ];then echo "bonjour1 $2 $1 ";else echo "syntaxe $0";fi;
et ca marche, mais je sais pas le probleme de l'autre.
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
est-ce qu'il y a une fin de ligne après le fi ?

fi<enter>
0
nouenoue Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   1 > dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention  
 
non, mais lorsque j'essai de la rajouter il me donne comme message " line 8: syntax error: unexpected end of file" merci
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637 > dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention  
 
Avec quel editeur ?
essayer d'ajouter
fi<enter>
exit<enter>
0
Darksidus
 
J'ai eu des problèmes similaires, cela venait dans mon cas des retours chariots dos que cygwin n'arrivait pas à interpréter.

Tu peux tenter un dos2unix sur ton fichier script, ça pourrait marcher.
1
nouenoue Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   1
 
Merci pour ton aide Darksidus la commande que tu m' a proposé c'était bien. j'ai essayé avec et ca marche. merci a tous .
1
4pat
 
Il suffit de mettre a jour l'install de cygwin et de lui choisir "Dos /text" dans la fenetre "Default text file type".
Cygwin traitera alors les retour chariots Dos.
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Salut,

affiche ton script
0
nouenoue Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   1
 
mon script est:
#!/bin/bash
if [$#=2]
then
echo "bonjour1 $2 $1 "
else
echo "syntaxe $0"
fi
0

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

Posez votre question
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Salut,

essaie
#!/bin/bash
if [ $# = 2 ]
then
echo "bonjour1 $2 $1 "
else
echo "syntaxe $0"
fi
0
nouenoue Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   1
 
salut lami20j.
le probleme n'est pas resolu il reste le message d'erreur
0