【问题标题】:How to Create a Folder From FileName in ADF如何在 ADF 中从文件名创建文件夹
【发布时间】:2022-11-13 16:27:01
【问题描述】:
我有像这样的文件
ABCD_12234.csv
ABCD_56789.csv
CDE_EFG_123456.csv
CDE_EFG_786542.csv
我想让 ABCD 文件之类的文件夹名称放在 ABCD 文件夹下
CDE_EFG 文件将放在 CDE_EFG 文件夹下
【问题讨论】:
-
您将在哪里创建文件夹?你可以使用@split之类的函数,参考这个page
标签:
azure
azure-data-factory
azure-data-lake-gen2
【解决方案1】:
为了从 ADF 中的文件名创建文件夹。请按照以下步骤操作:
步骤1:
- 首先用
Get Metadata创建管道并添加child items
第2步:
- 连接获取元数据和对于每个活动并添加子项的动态内容:
@activity('Get Metadata1').output.childItems
里面forEach
- 转到设置变量添加此动态内容:
@substring(item().name ,0, lastindexof(item().name,'_')) 使用此动态表达式您将获得单个文件。因此,将设置变量与复制活动一起使用。
转到复制活动的来源 -> 打开数据集 -> 创建参数 -> 转到连接并添加文件的动态内容:@dataset().file_name
- 转到接收器数据集 -> 创建两个参数,一个用于文件夹,另一个用于文件在我的场景中
folder1 和 file12 作为参数。
管道运行成功。它写入具有所需名称的文件和文件夹。请看下图以供参考。