Script para ftp não funciona - resolvido.

Iniciado por bruno_moita, 30 de Setembro de 2009, 09:51

tópico anterior - próximo tópico

bruno_moita

Bom dia Srs,

  Estou desenvolvndo um script para transferir automáticamente um arquivo via FTP. Porém ele não está avançando, abaixo o script em si:

/usr/sbin# bash -xv ftp.sh
#!/bin/bash
ftp -in <<EOF
open <IP_DO_SERVIDOR>
user <USER> <SENHA>
cd backup
mget *
mdelete *
bye
EOF
+ ftp -in
/usr/sbin#

  Que posso fazer para funcionar?


bruno_moita

Bom, estudando um pouco mais, descobri que deveria criar um arquivo independente com os comandos para alimetar o Script. Criei um arquivo chamado eof, porém ainda assim não funciona.

Conteúd do arquivo "eof":

/usr/sbin# cat EOF
open <ip>
user <user> <senha>
cd backup
mget *
mdelete *
bye

Conteúdo do arquivo ftp.sh:

#!/bin/bash
ftp -in <<EOF
#open <ip>
#user <usuario> <senha>
#cd backup
#mget *
#mdelete *
#bye
#EOF

Saída do Script:

:/usr/sbin# bash -xv ftp.sh
#!/bin/bash
ftp -in <<EOF
#open <ip>
#user <usuario> <senha>
#cd backup
#mget *
#mdelete *
#bye
#EOF
+ ftp -in
?Invalid command
?Invalid command
?Invalid command
?Invalid command
?Invalid command
?Invalid command
?Invalid command

Quando copio do arquivo e colo esses comandos no ftp, fazendo um passo a passo, funciona normalmente.  >:(

Alguém sabe o que pode estar acontecendo?




bruno_moita

resolvido:

#!/bin/bash

ftp -ivn << fim
        open <ip>
        user <user> <pass>
        cd backup
        mget *
        mdelete *
        bye
        EOF
fim