我想做一些简单的事情,比如
echo 'my text' | grep my
oozie似乎无法将|
作为参数处理。
是否有人能够在oozie内部|
工作?
答案 0 :(得分:1)
你可以在像这样的工作流程中使用包装Shell来解决Oozie有限的shell函数:
<action name="shell-node-pipe">
<shell xmlns="uri:oozie:shell-action:0.2">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<exec>bash</exec>
<argument>-c</argument>
<argument>/bin/echo my test | grep my</argument>
<capture-output />
</shell>
<ok to="end" />
<error to="fail" />
</action>
这样,bash的“-c”选项用于调用包含管道的命令。
答案 1 :(得分:0)
答案 2 :(得分:0)
我深深地看着oozie。它会自动生成一个包装器来执行你输入的命令,显然包装器除了带参数的简单命令外无法处理任何东西。