循环执行命令以提交多个作业

循环执行命令以提交多个作业

我正在向计算机提交作业。

它看起来像这样:

    mpirun -np 12 example_S57 -o S57.results -r S57.final
    mpirun -np 12 example_S58 -o S58.results -r S58.final
 ...
 ...
 ...
    mpirun -np 12 example_S74 -o S74.results -r S74.final

如何在我的脚本中循环执行此命令并为 S57 到 S74 运行此命令,而无需键入每个命令?

答案1

for example in S{57..74}; do
    mpirun -np 12 "example_$example" -o "$example.results" -r "$example.final"
done

这使用大括号扩展来bash创建Snn要循环的值。每次迭代中的值$example将是这些值之一,并且可以在调用命令时使用mpirun

答案2

使用 GNU Parallel 看起来像这样:

parallel mpirun -np 12 example_{} -o {}.results -r {}.final ::: S{57..74}

相关内容