使用 PSCP 从早于昨天的 SFTP 传输多个文件

Transfer multiple files from SFTP older than yesterday using PSCP

我正在使用以下命令从 SFTP 位置传输到本地文件夹。这会将所有文件从 SFTP 位置传输到本地文件夹。

如何传输仅供使用的文件,例如比昨天大?

cmd /c c:/putty/pscp -q -batch -pw password -i C:/putty/key_pk.ppk -r root@xx.xxx.xxx.xxx:/home/user/Folder1/* C:/LocalFolder1/SFTP/

谢谢。

pscp 做不到。

您所能做的就是使用 -ls 开关列出所有文件,解析输出以查找旧文件并为已识别的文件生成下载脚本。


或者使用能够按时间戳选择文件的 SCP/SFTP 客户端。

例如 WinSCP SFTP/SCP client,您可以使用以下批处理文件 (.bat) 下载超过一天的文件:

winscp.com /log=c:\path\to\winscp.log /command ^
    "open sftp://root:password@xx.xxx.xxx.xxx/ -privatekey=""C:\putty\key_pk.ppk"" -hostkey=""ssh-rsa 2048 xxxxxxxxxxx...=""" ^
    "get -filemask=<1D /home/user/Folder1/* C:\LocalFolder1\SFTP\" ^
    "exit"

参考文献:

(我是WinSCP的作者)