我是Pentaho的新手,并且已经开始研究如何从Pentaho执行shell /批处理文件。大多数在线信息都在“执行Shell”步骤中,这一步骤在v6中不存在。
如何使用“执行进程”步骤运行shell脚本?
以下是我正在做的事情,但脚本无法启动:
脚本非常简单
mkdir new_folder
任务完成,不显示新文件夹。所描述的步骤就是我正在做的。我错过了什么吗?
我使用PDI 6.0.0.0-353,只想建立从PDI运行shell / batch文件的程序。
非常感谢,因为我不知道在哪里寻找教程或信息,我坚持这个简单的步骤。
编辑: 如果我指定了错误的文件名,我会得到相同的结果,好像没有错。就像它甚至没有触及剧本一样。在Process Field中将路径放入可执行文件是否正确?
- 2015/11/25 12:51:14 - Spoon - 转型开启。 2015年11月25日
- 12:51:14 - Spoon - 启动转型[proc] ... 2015/11/25
- 12:51:14 - Spoon - 开始转型执行。 2015年11月25日
- 12:51:14 - proc - 为转换开始调度[proc]
- 2015/11/25 12:51:14 - 勺子 - 转型已经结束!!
答案 0 :(得分:4)
对于从上一步返回的每一行,执行此步骤与许多其他步骤一样。因此,如果您没有上一步,那么您的执行流程"步骤永远不会执行。
"流程领域"应该包含输入数据集的字段名称。该字段的值将被解释为shell命令。
一些注意事项:AFAIK,您必须在Windows中的shell命令之前添加cmd.exe /C
。例如。
cmd.exe /C echo "Hello, world">d:\test.log
。关于文件夹:很可能,您当前的目录将是文件夹,您可以从中运行spoon.sh或spoon.bat。
答案 1 :(得分:0)
文件夹可能会在您想到的地方以外的地方制作。暂时将脚本更改为:
echo Current Directory=%CD%
mkdir new_folder
dir
pause