我有一个以这种情况运行的邮件作业(作业邮件)
s(工作A)| s(工作B)| s(工作C)
,如果三个Jobs中的任何一个成功运行邮件Job,那么它就像我预期的那样运行。
现在我需要在脚本中获取成功的名称,即在脚本中触发Job-Mail,因为我在脚本中有一个逻辑来生成文件A,因为Job A成功并生成文件B,因为作业B成功
答案 0 :(得分:0)
在shell脚本中,使用
job_depends -c -j Job-Mail
并寻找原子条件。您将获得所有前任工作及其状态。在sed / awk / grep的帮助下,查看哪些作业成功并返回名称。如果超过1个工作成功,则提出异常或查看首先完成并返回该工作。
或者,您可以在shell中执行if else,条件应该类似于
jobWhichKickedJob-Mail = ""
if `autostatus -j Job A` = 'SUCCESS' then
jobWhichKickedJob-Mail = "Job A"
elif `autostatus -j Job B` = 'SUCCESS' then
jobWhichKickedJob-Mail = "Job B"
else
jobWhichKickedJob-Mail = "Job C"
并使用此变量。
注意:在脚本运行时,如果任何其他作业成功,您可能无法获得正确的结果。