UWSCマクロにてレポートを自動送信する過程で、複数のWEBサイトの管理画面のHTMLデータをFTPでサーバへ送信してサーバー上でスクレイピング等して解析していますが、全て送信しきれる場合と、いくつかだけ送信出来ていない場合があります。
マクロの該当スクリプトは下記です。
doscmd
1cmd = "ftp -s:" + FILE_DIR + "\ftpCommand.txt remotehost" 2ws = CreateOleObj("Wscript.Shell") 3s = ws.Run(cmd) 4print s
上記で呼び出すFTPコマンドを記載したファイルは下記です。
ftp
1user 2pass 3cd /home/www/files 4put C:\test\file.txt 5put C:\test\file.txt 6put C:\test\file.txt 7put C:\test\file.txt 8put C:\test\file.txt 9bye 10
(実際にはファイル名は全て違いますが、特殊文字などは使っていません。)
実際の件数は60件程です。
ファイル自体は存在するのですが、サーバー上に届いていない場合と、全て届いている場合があります。
putコマンドを連続しすぎていて、前のファイルが書き込み終わる前に次のファイルの処理が入ってしまっているからなのでしょうか。
それであればスリープを1秒置く場合のコマンドを教えて頂きたいです。
もしくはputコマンド自体が、書き込み終わりを待ってから次のファイルを処理するのであれば、原因がわかりません。
特別重いファイルでもありません。

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/11/29 13:55
2016/11/29 13:58
2016/11/29 14:39