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

能否定时将FTP文件及文件夹传输至Azure Blob?Logic Apps复制文件夹故障咨询

解答:FTP到Azure Blob的定时传输及Logic Apps文件夹复制问题

我来帮你拆解这两个问题:

1. 定时传输文件及文件夹到Azure Blob是完全可行的

你可以通过Azure Logic Apps或者Azure Functions来实现定时同步:

  • 如果用Logic Apps,核心是用Recurrence触发器设置定时规则(比如每天凌晨2点、每小时一次),然后配合FTP的遍历操作来同步所有指定路径下的文件和文件夹。
  • 如果需要更灵活的自定义逻辑,也可以用Azure Functions的定时触发器(Timer Trigger),结合FTP客户端库和Azure Blob存储SDK来编写同步代码。

2. Logic Apps无法复制FTP文件夹的解决方案

你当前遇到的问题是因为默认的FTP触发器(比如When a file is added or modified)只针对单个文件触发,不会处理文件夹的递归遍历。要复制整个文件夹结构,需要调整流程的结构:

  • 第一步,替换触发器为Recurrence(定时触发),根据你的需求设置执行频率。
  • 第二步,添加FTP的List files in folder操作,在这个操作的设置里,找到并勾选Recurse选项(这个就是递归遍历所有子文件夹的关键,你之前可能没注意到这个隐藏的设置项)。
  • 第三步,添加For each循环,遍历List files in folder返回的所有文件条目。
  • 第四步,在循环内部添加Copy blob操作,将FTP文件复制到Azure Blob存储。如果需要保留原有的文件夹结构,记得在Blob的目标路径里用表达式拼接原路径,比如:
    @{items('For_each')?['Folder Path']}@{items('For_each')?['Name']}
    
    这样就能把子文件夹里的文件同步到Blob对应的路径下。

另外,如果需要只同步新增的文件/文件夹,你可以额外添加一个步骤:用Azure Table Storage或者Blob的元数据来记录已经同步过的文件路径,每次定时触发时先对比过滤,只处理新增的内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 04:25:53