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

如何通过Logic Apps自动创建Blob文件夹并同步FTP新增文件夹内容?

解决方案:用Logic Apps自动同步FTP新文件夹及文件到Blob存储

一、完整流程搭建步骤

我帮你梳理下具体的实现逻辑,分几步就能搞定:

  1. 设置FTP触发器
    选择FTP连接器的「当文件夹被添加」触发器,配置你的FTP服务器连接信息,指定要监测的根目录(比如FTP的/根目录)。这样Logic Apps会自动监听FTP里新创建的文件夹。

  2. 获取新文件夹下的所有文件
    添加FTP的「获取文件夹中的文件」操作,将触发器返回的新文件夹路径作为目标路径,勾选「包含子文件夹」(如果需要处理嵌套文件夹的话),这样就能拿到该文件夹下所有新增的文件。

  3. 循环处理每个文件
    添加「For each」循环组件,把上一步获取到的文件列表作为循环输入。在循环内部:

    • 用FTP的「获取文件内容」操作,读取当前循环文件的内容;
    • 用Azure Blob存储的「创建Blob」操作,配置你的存储账户和容器。重点在这里:要创建对应的Blob虚拟文件夹,只需要在「Blob名称」里填写{FTP文件夹名称}/{文件名}(比如FTP里的new-folder/report.pdf,就填new-folder/report.pdf)。Blob存储会自动识别路径分隔符/,在Storage Explorer里显示为文件夹结构。
  4. (可选)删除FTP源文件
    如果需要同步后清理FTP的文件,在循环里再加一个FTP的「删除文件」操作,传入当前文件的路径即可。

二、关于Logic Apps创建Blob“文件夹”的说明

首先明确:Azure Blob存储是扁平存储结构,没有实际的物理文件夹,所谓的“文件夹”是通过Blob名称中的/分隔符模拟出来的虚拟结构。

用Logic Apps创建虚拟文件夹有两种方式:

  • 方式1:直接上传带路径的文件
    就像上面步骤里说的,上传文件时指定包含路径的Blob名称(比如data/2024/05/file.csv),Blob存储会自动在界面上显示data→2024→05的文件夹层级,不需要提前创建“空文件夹”。
  • 方式2:创建空的文件夹占位符
    如果你需要先创建一个空文件夹(比如没有文件也要显示这个文件夹),可以用Blob存储的「创建Blob」操作,把「Blob名称」设为目标文件夹名称/(注意末尾要加/),然后「Blob内容」留空或者填个空字符串。这样Storage Explorer里就会显示这个空文件夹了。

额外提示

  • 如果你需要监测FTP文件夹里的新增文件(包括后续添加到已有文件夹的文件),可以把触发器换成FTP的「当文件被添加或修改」,勾选「包含子文件夹」,然后在操作里解析文件的完整路径,自动对应到Blob的路径上。
  • 记得在触发器里设置合适的轮询间隔,比如5分钟一次,避免频繁请求FTP服务器。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 08:37:59