Pentaho PDI如何从许多TGZ中获取XML



我想从许多.tgz获取XML文件。

我已经尝试了此TP读取一个TGZ文件:

folder/file               |   regex 
tgz:C:tmpfile_01.tgz!   |   .*.xml

但是,就我而言,我不知道可以有多少个.tgz文件。我尝试这样的事情,但它不起作用:

tgz:C:tmpfile_*.tgz!

创建一个作业(而不是转换(,然后使用 Unzip file与Regex使用temp Directory中的所有文件解压缩。在Advanced tab上,单击Add extracted file to result,以保存内部提取的文件的列表。

然后让作业执行一个转换,其第一步是Get row from results,以获取字段中的文件名列表,并将流量放在Get data from XML中。在此步骤中,您想从上一个步骤获取文件名。

然后返回工作,然后放一个Delete file name from result。确保箭头是绿色的,因此仅在成功阅读时才删除提取的XML。

这样,您的TMP目录将包含未读取的文件。从长远来看,很容易维护。特别是在Unzip file上,您可以检查自动附加提取的XML上日期的选项。

最新更新