Tectia命令行 - 根据上传/修改日期从服务器下载文件

时间:2013-04-23 20:00:13

标签: command-line vbscript sftp

我的服务器机器有一个Unix操作系统。我可以使用Tectia的scpg3命令行从Unix服务器下载文件到本地(windows)机器。现在,我想只复制那些在特定日期上传(修改日期)的文件。

我在我的VBScript中使用scpg3的下面命令从服务器文件夹下载文件。它正在复制所有文件,但现在我想复制特定日期的文件。

Set oFTPScriptFSO = CreateObject("Scripting.FileSystemObject")

ioFTPScriptShell.Run "%comspec% /c scpg3 " & sUsername & "@" & remoteServer & ":" & sRemotePath & " " & strDirectory, 1, TRUE

感谢您的时间。

1 个答案:

答案 0 :(得分:1)

我不认为scpg3可以做到这一点。

如果您使用scpg3作为SFTP协议,则可以使用WinSCP代替:

ioFTPScriptShell.Run "%comspec% /c winscp.com /command ""option batch abort""" _
  & " ""option confirm off""" _
  & " ""open sftp://" & sUsername & "@" & remoteServer & """" _
  & " ""get -filemask=*>=2013-04-23<2013-04-24 " & sRemotePath _
  & " " & strDirectory & """", 1, TRUE

请注意-filemask=*>=2013-04-23<2013-04-24命令的get开关。

详情请见:
https://winscp.net/eng/docs/guide_automation
https://winscp.net/eng/docs/file_mask#size_time

或者,您可以考虑直接从VBScript使用WinSCP .NET / COM库:
https://winscp.net/eng/docs/library
https://winscp.net/eng/docs/library_com_wsh

(我是WinSCP的作者)