我有一个使用 bjobs 提交多个作业的 python 脚本。下面是代码片段
for jobs in job_list:
i=0
os.system("bsub -J JOB_{} jobs".format(str(i))
i+=1
我只想在所有作业完成后打印“已完成运行”。我该怎么做?
我有一个使用 bjobs 提交多个作业的 python 脚本。下面是代码片段
for jobs in job_list:
i=0
os.system("bsub -J JOB_{} jobs".format(str(i))
i+=1
我只想在所有作业完成后打印“已完成运行”。我该怎么做?
您将需要获取每个作业的结果,因此请改用subprocess模块。
如果您在单独的线程上调用每个作业,则可以使用共享列表来保存每个作业的结果,因此每当所有工作完成时,此列表的大小将与 相同jobs_list
,然后您可以打印正确的消息。
但如果代码只是上面的代码片段,你可以这样做:
for index, job in enumerate(job_list):
result = subprocess.call(f"bsub -J JOB_{index} jobs")
print("Finished runnning")
不确定...但请尝试一下!
counter = 0
for jobs in job_list:
counter +=1
i=0
os.system("bsub -J JOB_{} jobs".format(str(i))
i+=1
if len(job_list) <= counter:
print("Completed")
'''