在Oozie中将参数从一个动作传递到另一个动作

我有一个以下shell脚本:

DATE= date +"%d%b%y" -d "-1 days" 

如何将DATE传递给Java操作?

您可以捕获shell脚本的输出并将其传递给java action。在shell脚本中,回显属性,如’dateVariable = $ {DATE}’,并在shell操作中添加capture-output元素。 这将允许您从shell脚本捕获dateVariable。在java操作中,您可以将捕获的变量作为参数传递为$ {wf:actionData(’shellAction’)[‘dateVariable’]},其中shellAction是shell操作名称。

示例工作流程: –

      ${jobTracker} ${nameNode} test_script.sh ${nameNode}/${workFlowLocation}/Scripts/test_script.sh#test_script.sh        com.test.TestDriver ${wf:actionData('shellAction')['dateVariable']}       Job failed, error message[${wf:errorMessage(wf:lastErrorNode())}]    

在shell脚本中,回显如下的值

  echo "dateVariable=${dateValue}"