是否可以设置一个 -halt 条件(或多个 -halt 条件?),以便无论退出代码如何,如果其中任何一个作业失败,所有作业都将停止?
我想监视一个事件(我刚刚在负载平衡服务上单独触发)。我可以通过查看日志来确定事件是通过还是失败,但我必须同时查看多个服务器上的日志。完美的!平行吧!不过,我有一个额外的要求:我想根据日志结果返回成功或失败。
因此,如果并行作业中的任何一个检测到事件(即"-halt now"),我想停止并行作业,但我不知道检测是否会返回零或非零(这就是重点:我正在尝试找出该信息),所以两者"--halt now,success=1"都不"--halt now,fail=1"正确,我需要找出一种方法来做类似的事情"--halt now,any=1")
我查看了源代码,嗯,我的 perl 功夫不足以解决这个问题(看起来 exitstatus 在源代码的许多不同地方使用,所以我很难弄清楚这是否可行或不。)
请注意,,success=1两者,fail=1都工作得很好(给定相应的退出状态),但我不知道在并行运行之前它会成功还是失败。
gnu-parallel ×1