如何无需显式指定容器数组,在两个存储账户间原样复制所有容器
存储账户容器原样复制操作步骤(Azure Data Factory环境)
- 创建源与目标数据集
- 源数据集:选择Azure Blob Storage类型,关联已创建的源存储链接服务,容器名称留空或设置为动态参数
- 目标数据集:选择Azure Blob Storage类型,关联已创建的目标存储链接服务,容器名称同样留空或设置为动态参数
- 添加Lookup活动获取源容器列表
- 在管道中新增Lookup活动,数据源选择源数据集
- 勾选「查询」选项,输入查询语句:
LIST CONTAINERS - 集成运行时选择你创建的虚拟网络内的IR,执行后可获取源存储下所有容器的名称集合
- 用ForEach活动遍历复制容器
- 将Lookup活动的输出作为ForEach的输入项,输入表达式:
@activity('Lookup活动名称').output.value - 在ForEach内部添加Copy活动:
- 源配置:选择源数据集,容器名称设置为动态内容
@item().Name - 目标配置:选择目标数据集,容器名称同样设置为
@item().Name - 复制行为选择「递归复制所有文件」,确保子目录与文件完整复制
- 源配置:选择源数据集,容器名称设置为动态内容
- 将Lookup活动的输出作为ForEach的输入项,输入表达式:
- 验证并运行管道
- 确认所有活动的集成运行时均指定为虚拟网络内的IR
- 触发管道运行,完成后目标存储将生成与源完全同名的容器及内容
内容的提问来源于stack exchange,提问作者Vaishnavi Vaishu
相关产品推荐
相关产品推荐

