【问题标题】:gnu parallel no dependency between jobs in each divisiongnu parallel 每个部门的作业之间没有依赖关系
【发布时间】:2017-08-19 03:09:44
【问题描述】:

假设我们有以下 GNU 并行命令:

parallel --resume-failed --joblog test.log --jobs 2 -m -k sh ::: 1.sh 2.sh 3.sh

第一个CPU:1.sh 2.sh

第二个CPU:3.sh

现在如果 1.sh 失败,代码将重试 1.sh。如果 1.sh 仍然失败,则 2.ish 也不会执行。我想知道如果1.sh失败,我们是否先运行2.sh,然后在最后再次重试1.sh?谢谢。

【问题讨论】:

    标签: parallel-processing gnu-parallel


    【解决方案1】:

    我感觉你真的不想要-m

    $ parallel --dryrun --resume-failed --joblog test.log --jobs 2 -m -k sh ::: 1.sh 2.sh 3.sh
    sh 1.sh 2.sh
    sh 3.sh
    

    这真的是你想要的吗? IE。将2.sh 作为1.sh 的参数。

    我想你想运行这个:

    $ parallel --joblog test.log --jobs 2 -k sh ::: 1.sh 2.sh 3.sh
    

    如果其中任何一个失败,您将通过以下方式恢复失败:

    $ parallel --resume-failed --joblog test.log --jobs 2 -k sh ::: 1.sh 2.sh 3.sh
    

    【讨论】:

    • 感谢@Ole 的帮助!我终于有时间重温这篇文章了。
    猜你喜欢
    • 2019-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多