【发布时间】:2015-03-31 17:34:10
【问题描述】:
我想知道如何使用水壶作业根据创建日期删除文件。我有一个日志文件夹,其中包含过去一年的日志文件。但我只想保留上周的日志文件。这项工作应该是删除所有超过一周的日志文件。 pentaho 作业中有一个删除文件选项。但是我们如何获取文件创建日期并相应地删除文件
【问题讨论】:
-
删除文件的步骤名称是什么?
标签: pentaho kettle data-integration
我想知道如何使用水壶作业根据创建日期删除文件。我有一个日志文件夹,其中包含过去一年的日志文件。但我只想保留上周的日志文件。这项工作应该是删除所有超过一周的日志文件。 pentaho 作业中有一个删除文件选项。但是我们如何获取文件创建日期并相应地删除文件
【问题讨论】:
标签: pentaho kettle data-integration
您可以在转换中做到这一点。 下面显示的是所需的步骤。
1. 在这里您可以通过在Get File Names 步骤中提供目录名称来获取文件名。 (它以列的形式提供文件的lastmodifieddate 等附加信息)
2. 然后你可以写一些java代码来过滤文件名。例如:(今天-7 天)并将超过一周的文件名发送到下一步。
3. 使用Process Files 删除文件。选择操作作为删除和源文件名字段作为filename。
最后,您可以从作业中调用转换以安排它。
P.S 如果您不喜欢 java filter 步骤您也可以从 Get System info 步骤中获取今天的日期,您可以在 Calculator 步骤中从今天的日期减少 7 天,然后是 @987654329可以相应地使用@step。
【讨论】:
filename.contains("123")”