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

Azure Data Factory复制文件时如何去除源文件夹层级结构

ADF复制文件去除源文件夹层级的解决方案

问题根源

当前配置会保留源层级,是因为Copy Activity默认继承源路径的相对结构,需要通过动态路径配置直接指定单个文件的读写路径。

具体修正步骤

1. 确认Get Metadata的文件获取逻辑

  • 将Get Metadata活动的源数据集路径设为a/b/c/d,勾选Child items选项,确保仅获取该目录下的文件(可通过@filter(activity('Get Metadata').output.childItems, equals(item().type, 'File'))过滤掉文件夹)。

2. 调整For Each的迭代对象

  • For Each的Items属性直接使用上述过滤后的文件列表,确保每次迭代仅处理单个文件。

3. 核心:Copy Activity的路径配置

源端配置

  • 不给源数据集固定路径,在Copy Activity的源选项卡中,将文件路径设为动态表达式:
    @concat('a/b/c/d/', item().name)
    
    直接指向当前迭代的单个源文件。

目标端配置

  • 目标数据集的固定路径设为a/b,然后在文件名处使用动态表达式:
    @item().name
    
    这样文件会直接写入a/b目录,不会携带源端的c/d层级。

4. 避坑提示

  • 关闭源数据集的递归选项,防止误获取子目录内容。
  • 若存在重名文件,可修改目标文件名表达式(如@concat(utcNow('yyyyMMddHHmmss'), '_', item().name))避免覆盖。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 12:40:41