ログを生成して Windows サーバーに送信するスクリプトが Unix ボックスにあります。
私のスクリプトは1日に4回実行され、各実行の結果を同じログに追加します。つまり、Windowsサーバーのログは毎回上書きされる必要があります。最初の実行後、スクリプトは機能せず、
Permission denied
これは、ファイルが既に Windows サーバー上に存在しているためだと思いますが、スクリプトの残りの部分はすべて正常に動作し、UNIX 側のログにすべての履歴が残っています。
FTP 用のスクリプトの構文は次のとおりです。
ftp -n $HOST << EOF
user $USER $PASSWD
binary
prompt
lcd /dba/logs/
mput monitor_FM2.log
quit
EOF
exit 0
put
の代わりにも試してみましたmput
が、結果は同じでした。
答え1
問題が分かりました。基本的に、Unix から Windows に接続するために使用するユーザーが Windows フォルダーに対する適切な権限を持っていなかったため、エラーが発生しました。必要な権限を与えたところ、正常に動作するようになりました。