批量文件只能从FTP下载新文件?

时间:2013-12-17 13:40:50

标签: batch-file

我使用下面的代码从FTP服务器下载文件。有什么方法可以检查修改日期或不同的文件大小,只下载新文件吗?

@Echo Off
Set _FTPServerName=
Set _UserName=
Set _Password=
Set _LocalFolder= C:\Presentation\video
Set _Filename= /Presentation/video
Set _ScriptFile=ftp4

>>"%_ScriptFile%" Echo open %_FTPServerName%
>>"%_ScriptFile%" Echo %_UserName%
>>"%_ScriptFile%" Echo %_Password%
>>"%_ScriptFile%" Echo lcd %_LocalFolder%
>>"%_ScriptFile%" Echo binary
>>"%_ScriptFile%" Echo prompt
>>"%_ScriptFile%" Echo Mget %_Filename%
>>"%_ScriptFile%" Echo quit
ftp -s:"%_ScriptFile%"
msg * "Transfer Complete"

1 个答案:

答案 0 :(得分:1)

至少有三种选择。

1 - 编写代码来处理它。

  • 使用类似的脚本获取包含详细信息(大小,日期)的文件列表
  • 针对现有文件迭代此列表以确定需要下载的文件,并在此过程中生成仅下载所需文件的脚本
  • 执行该脚本

抱歉,此选项没有附带的代码。我对你的ftp服务器,文件名,日期格式,子文件夹,....一无所知。

2 - 将所有文件下载到临时目录并使用robocopy更新所需的目标目录

3 - 使用可编写脚本的ftp客户端,使您可以执行所需的操作。

选项1意味着更多的工作,2意味着更多的流量/时间,3应该是允许的最佳选择。