使用 Pentaho 从远程 SFTP 删除超过 7 天的文件

Delete files older than 7 days from a remote SFTP with Pentaho

我正在使用 Pentado 数据集成 8.2。我对 Pentaho 的经验很少。

我需要使用 Pentaho 创建一个作业,从远程 SFTP 删除超过 7 天的文件。

我搜索过,但找不到远程 SFTP 的解决方案。

谢谢。

只需使用简单的文件处理步骤即可完成。 首先使用 get file names 它会给你 lastmodifiedtime 作为列。 之后过滤 7 天前的行。并将这些行传递给 processfile .从 processfile 步骤的下拉列表中选择删除。 对于 7 天间隔,使用 get system info 获取当前日期,使用计算器获取 currentdate-7days。 我希望你明白了。 这个顺序是这样的。

get file names-->get sys info--> calculator -->filter rows -->process files

您可以使用 运行 ssh 组件连接到您的主目录。在 commands 选项卡下的 settings 选项卡中,运行 以下命令。

find /path/to/ \
  -type f \
  -mtime +7 \
  -name '*.txt' \
  -execdir rm -- '{}' \;

这将删除所有 txt 超过 7 天的文件。