Shell
功能
通过Shell节点执行用户指定的Shell脚本。
 
 
   Shell节点的后续节点可以通过EL表达式#{Job.getNodeOutput()},获取Shell脚本最后4000字符的标准输出。
使用示例:
获取某个Shell脚本(脚本名称为shell_job1)输出值包含“<name>jack<name1>”的内容,EL表达式如下所示:
#{StringUtil.substringBetween(Job.getNodeOutput("shell_job1"),"<name>","<name1>")}
    数据开发中的shell作业,是根据脚本执行返回值判断脚本执行成功还是失败。 如果返回值是0,则判断脚本执行成功。非0为失败。
参数
| 参数 | 是否必选 | 说明 | 
|---|---|---|
| Shell或脚本 | 是 | 可以选择Shell语句或Shell脚本。 | 
| 主机连接 | 是 | 选择执行Shell脚本的主机。 
         须知: 
         
 | 
| 参数 | 否 | 填写执行Shell脚本时,向脚本传递的参数,参数之间使用空格分隔,例如:a b c。此处的“参数”需要在Shell脚本中引用,否则配置无效。 | 
| 交互式输入 | 否 | 填写交互式参数,即执行Shell脚本的过程中,需要用户输入的交互式信息(例如密码)。交互式参数之间以空格分隔,Shell脚本根据交互情况按顺序读取参数值。 read -p语法的使用示例: read -p “输入参数1和参数2”变量1 变量2 | 
| 节点名称 | 是 | 节点名称,只能包含英文字母、数字、中文字符、中划线、下划线、/、<>和点号,且长度小于等于128个字符。 默认情况下,节点名称会与选择的脚本名称保持同步。若不需要节点名称和脚本名称同步,请参考禁用作业节点名称同步变化禁用该功能。 | 
| 参数 | 是否必选 | 说明 | 
|---|---|---|
| 节点状态轮询时间(秒) | 是 | 设置轮询时间(1~60秒),每隔x秒查询一次节点是否执行完成。 | 
| 节点执行的最长时间 | 是 | 设置节点执行的超时时间,如果节点配置了重试,在超时时间内未执行完成,该节点将会再次重试。 | 
| 失败重试 | 是 | 节点执行失败后,是否重新执行节点。 
 | 
| 重试条件 | 否 | 失败重试选择“是”时,支持设置重试条件。 打开重试条件的开关,设置返回码的范围。 Shell作业可以根据返回码判断作业节点执行失败是否重试。用户可以定义Shell的返回结果码中哪些返回码可以重跑。 | 
| 当前节点失败后,后续节点处理策略 | 是 | 节点执行失败后的操作: 
 | 
| 是否空跑 | 否 | 如果勾选了空跑,该节点不会实际执行,将直接返回成功。 | 
| 任务组 | 否 | 选择任务组。任务组配置好后,可以更细粒度地进行当前任务组中的作业节点的并发数控制,比如作业中包含多个节点、补数据、重跑等场景。 | 
 
    