Ftp sous shell

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
Configuration: Windows 2000
Firefox 1.5.0.4

5 réponses

  1. Contributeur
    non, j'avais mal lu. Et comme ça:
    ftp machine 21 <<- EOF # avec un espace après -
    1. 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
      1. Contributeur
        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. 
        1. ben justement, le [-] est là pour ne pas prendre en compte la tabulation normalement, non?
          1. Contributeur
            -EOF: le - est de trop ou il manque à la ligne EOF
            ftp machine 21 <<EOF
            ...
            EOF