Remove the circled part of the filename
文件夹x中有两种类型的文件:\ abc \ sales \ 一个是压缩的.gz文件,另一个是未压缩的.txt文件 我的目标是重命名所有“.txt”文件:(保持.gz文件不变) 例如。 “accn_adjustments_201802020147.txt”
下划线之后的部分基本上是日期和时间,时间并不总是“0147”,它可能是“0148”或“0210”或其他任何东西,但总是4位数...... 我的任务是删除最后4位数,以便最终结果看起来像“accn_adjustments_20180202.txt”
我认为 - 每个循环或脚本任务都可以帮助我解决这个问题,但我不知道该怎么做。
感谢任何帮助,提前感谢...
答案 0 :(得分:1)
步骤1)将Foreach Loop Container
添加到包中(将Foreach循环容器从SSIS工具箱中的容器拖到包工作区)。
步骤2)双击Foreach循环以打开编辑器
步骤3)点击左侧菜单上的收藏,然后将Enumerator
属性更改为Foreach File Enumerator
步骤4)选择您的文件夹:x:\abc\sales\
步骤5)将文件的属性更改为*.txt
此外,您还需要:
步骤6)将File System Task
从工具箱拖到Foreach Loop Container
步骤7)双击File System Task
并将操作更改为Rename File
步骤8)在任务上设置源和目标连接(我假设您知道如何创建这些连接)。
现在容器只会遍历文件夹中的文本文件。
这可以通过使用Varachbles,Foreach循环和表达式的变量映射部分来扩展,以动态修改文件名并更改文本文件数据源的连接属性。虽然我并不是100%清楚地知道你还需要什么,但至少应该回答这个问题来帮助你入门。
有助于重命名过程的一些额外阅读: