【问题标题】:Delete files using pentaho使用 pentaho 删除文件
【发布时间】:2015-03-31 17:34:10
【问题描述】:

我想知道如何使用水壶作业根据创建日期删除文件。我有一个日志文件夹,其中包含过去一年的日志文件。但我只想保留上周的日志文件。这项工作应该是删除所有超过一周的日志文件。 pentaho 作业中有一个删除文件选项。但是我们如何获取文件创建日期并相应地删除文件

【问题讨论】:

  • 删除文件的步骤名称是什么?

标签: pentaho kettle data-integration


【解决方案1】:

您可以在转换中做到这一点。 下面显示的是所需的步骤。


1. 在这里您可以通过在Get File Names 步骤中提供目录名称来获取文件名。 (它以列的形式提供文件的lastmodifieddate 等附加信息)
2. 然后你可以写一些java代码来过滤文件名。例如:(今天-7 天)并将超过一周的文件名发送到下一步。
3. 使用Process Files 删除文件。选择操作作为删除和源文件名字段作为filename。 最后,您可以从作业中调用转换以安排它。

P.S 如果您不喜欢 java filter 步骤您也可以从 Get System info 步骤中获取今天的日期,您可以在 Calculator 步骤中从今天的日期减少 7 天,然后是 @987654329可以相应地使用@step。

【讨论】:

  • 谢谢。我将尝试您在此处提到的步骤。
  • Java 过滤器示例 - 条件 Java 表达式:“filename.contains("123")”
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-17
  • 2020-05-11
  • 2016-01-09
相关资源
最近更新 更多