我有一个生成日志的脚本,在脚本末尾我将日志移动到 Windows 服务器。两台服务器之间的连接很好,如果我尝试手动发送文件,效果很好。
脚本和日志位于两个不同的位置。我的脚本如下:
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
但是当我运行脚本时出现错误:
Filename invalid
谁能告诉我脚本中是否遗漏了某些内容?谢谢
答案1
您正在尝试将文件写入/home/logs/monitor_sync_FM2.log
远程服务器(即Windows)上的路径。 550 文件名无效表示/home/logs
远程服务器上不存在。你想做的是这样的:
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