Posez votre question Signaler

Ftp sous shell

tontonswell - Dernière réponse le 17 nov. 2007 à 10:05
Bonjour,
j'ai un script shell, pour une transaction ftp qui fait ça:
if [ $mavariable -eq $cekejeveux ]
then
ftp machine 21 <<-EOF
cd "rep"
binary
dir
quit
EOF
else
#The -EOF is there to remove the tabs
ftp machine 21 <<-EOF
cd "rep"
binary
dir
quit
EOF
fi
mais il me renvoie cette erreur:
./ftp[5]: syntax error at line 8 : `<<' unmatched
Je sais qu'il s'agit normalement d'un problème de tabulations...
Quelqu'un a une idée?
Merci d'avance
Lire la suite 

Ftp sous shell »

5 réponses
Réponse
+0
moins plus
-EOF: le - est de trop ou il manque à la ligne EOF
ftp machine 21 <<EOF
...
EOF
Ajouter un commentaire
Réponse
+0
moins plus
ben justement, le [-] est là pour ne pas prendre en compte la tabulation normalement, non?
Ajouter un commentaire
Réponse
+0
moins plus
ne serait-ce pas <<- ?
The format of here-documents is:
...
<<[-]word
        here-document
delimiter
....

If the redirection operator is `<<-', then all leading tab characters are stripped from input lines and the line containing delimiter. This allows here-documents within shell scripts to be indented in a natural fashion. 
Ajouter un commentaire
Réponse
+0
moins plus
tu sous-entenderais donc :

if [ $mavariable -eq $sketuveux ]
then
#The -EOF is there to remove the tabs
<<-EOF
ftp machine 21
cd "rep"
binary
dir
quit
EOF
else
#The -EOF is there to remove the tabs
<<-EOF
ftp machine 21
cd "rep"
binary
dir
quit
EOF

J'ai essayé, mais rien, on dirait kil prend pas en compte la commande
Ajouter un commentaire
Réponse
+0
moins plus
non, j'avais mal lu. Et comme ça:
ftp machine 21 <<- EOF # avec un espace après -
Ajouter un commentaire
Ce document intitulé « Ftp sous shell » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook