gpt4 book ai didi

ubuntu - 如何按顺序运行多个 .sbatch 脚本

转载 作者:行者123 更新时间:2023-12-04 18:31:35 33 4
gpt4 key购买 nike

我必须为集群运行多个 sbatch slurm 脚本。说,我有 50 个 sbatch 文件,我在终端中按顺序运行它们(正在使用 Ubundu),如下所示:

sbatch file1.sbatch  
sbatch file2.sbatch
.
.
.
sbatch file50.sbatch

我想简化这 50 个不同的命令以在单个命令中运行。由于我是使用终端和集群的新手,我真的不知道如何解决这个问题。请建议我执行此操作的一些解决方案(我想我需要使用一些 for 循环语句,但我怀疑其中的语法)。我完全糊涂了,一些相关文件也可能会有所帮助。

谢谢你。

更新:
我尝试了以下脚本:
#!/bin/bash  
for i in {1..3}
do
sbatch layer$i.sbatch
done

但是,它并没有创造单独的工作。只有单个作业作为整体提交。所以,这对我不起作用。
$ ~/Marabou% sbatch call_sbatch.sbatch  
Submitted batch job 4576049

谢谢。

更新:
以下脚本有效:
import os os.system ("sbatch filename1.sbatch") os.system ("sbatch filename2.sbatch")

最佳答案

您准备的代码应该在交互式 shell 中运行,而不是启动到队列中。

直接运行你的代码:

$ sh call_sbatch.sbatch

或者,如果您的文件是可执行的,
$ ./call_sbatch.sbatch

它应该使用您创建的循环运行内部行,并且该循环会将您感兴趣的作业发送到队列(在您的示例代码中,三个作业:layer1.sbatch、layer2.sbatch 和 layer3.sbatch)。

关于ubuntu - 如何按顺序运行多个 .sbatch 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57020382/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com