SFTP从远程服务器复制最近的时间戳文件到本地服务器使用WinSCP
问题描述:
我有两种类型的文件每天在远程服务器(salaryreport_2014925_5010.zip
和runningreport_2014925_4223.zip
)生成。SFTP从远程服务器复制最近的时间戳文件到本地服务器使用WinSCP
任何人都可以帮助我完成代码从远程服务器获取最近的文件并复制到本地服务器。
到目前为止我可以从远程到本地服务器的所有文件复制:
option batch on
option confirm off
lcd E:\Source
open sftp://abcd:[email protected]:22
cd source/reports
get "salaryreport_"*
get "runningreport_"*
close
exit
答
设置计划,你需要从移动服务器上的任务ROBOCOPY?
robocopy "\\remote\files" "\\local\files" /E /MOVE
答
查看WinSCP文章Downloading the most recent file。
由于WinSCP赋予5.9,你可以使用-latest
开关,使这是一个非常简单的任务:
get -latest "salaryreport_"*
get -latest "runningreport_"*
对于早期版本:
你可以下载(两个)最近的文件。使用WinSCP这不是微不足道的。
-
或下载带有当前日期时间戳的文件。这很简单,如果你使用的
%TIMESTAMP%
syntax:get "salaryreport_%TIMESTAMP#yyyymmdd%_*" get "runningreport_%TIMESTAMP#yyyymmdd%_*"