You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过WinSCP脚本仅从SFTP服务器下载当日创建的文件?

解决WinSCP脚本仅下载当日创建文件的方案

我来帮你搞定这个每日仅下载当日创建文件的需求!问题出在你之前的filemask没用到WinSCP的时间筛选规则,下面给你具体的解决方法:

核心思路

WinSCP的synchronize命令支持通过filemask结合时间条件筛选文件,关键是用内置的时间戳变量动态获取当日日期,再指定筛选创建时间符合条件的文件。

修改后的完整脚本片段

open sftp://location.net -passphrase="passphrase" -hostkey="key"
# 替换成你的本地目标路径和远程源路径
synchronize local "D:/Local/Download/Path" "/Remote/Source/Path" -filemask="C>=%TIMESTAMP#yyyy-mm-dd%"
close
exit

关键参数解释

  • C>=:这里的C代表文件创建时间,如果你的需求是按修改时间筛选,换成M>=即可;>=表示筛选时间大于等于指定日期的文件
  • %TIMESTAMP#yyyy-mm-dd%:WinSCP内置的时间戳变量,会自动生成脚本运行当日的日期(格式为年-月-日),每天运行时都会自动适配当天的日期,不用手动修改
  • 如果你想先验证筛选结果(避免误下载),可以加上-dryrun参数,它会模拟同步过程并显示要下载的文件,不会实际写入本地:
    synchronize local "D:/Local/Download/Path" "/Remote/Source/Path" -filemask="C>=%TIMESTAMP#yyyy-mm-dd%" -dryrun
    

注意事项

  • 确保远程SFTP服务器能正确返回文件的创建时间,部分服务器可能只暴露修改时间,如果遇到这种情况,建议改用M>=按修改时间筛选
  • 路径要注意格式:本地路径用Windows格式(比如D:/xxx或D:\xxx),远程路径用Unix格式(比如/xxx/xxx)

内容的提问来源于stack exchange,提问作者Pablo prez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 11:45:36