550 Nome de arquivo inválido

550 Nome de arquivo inválido

Eu tenho um script que gera um log e no final do script movo o log para um servidor windows. A conexão entre os 2 servidores está boa, se tento enviar os arquivos manualmente funciona bem.

O script e os logs estão em dois locais diferentes. Meu script é como abaixo:

LOGFILE=/home/logs/monitor_sync_FM2.log
HOST='xxx.xxx.xxx.xxx'
USER='FTPUser'
PASSWD='Password'


ftp -n $HOST << EOF
user $USER $PASSWD
binary
prompt
mput $LOGFILE
quit
EOF
exit 0

mas quando executo o script recebo o erro:

Filename invalid

Alguém pode me dizer se estou faltando alguma coisa no meu script? Obrigado

Responder1

Você está tentando gravar o arquivo no caminho /home/logs/monitor_sync_FM2.logdo servidor remoto (ou seja, Windows). 550 Nome de arquivo inválido indica que /home/logsnão existe no servidor remoto. O que você quer fazer é isto:

LOGFILE=monitor_sync_FM2.log
HOST='xxx.xxx.xxx.xxx'
USER='FTPUser'
PASSWD='Password'

cd /home/logs/
ftp -n $HOST << EOF
user $USER $PASSWD
binary
prompt
mput $LOGFILE
quit
EOF
exit 0

informação relacionada