ログを生成するスクリプトがあり、スクリプトの最後でログをWindowsサーバーに移動します。 2つのサーバー間の接続は良好で、ファイルを手動で送信しようとすると正常に機能します。
スクリプトとログは2つの異なる場所にあります。私のスクリプトは次のとおりです。
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