1

我有一个 python 脚本,它对输入文件执行一些操作,然后使用 qsub 提交一个新作业。

一旦这个新提交的作业完成,我想再次运行 python 脚本。所以基本上,这个python脚本的运行必须与python脚本本身提交的上一个作业的运行相关联。

用代码来概括。我进入父目录并输入:

./python_script.py

python 脚本的结构如下(实际上要复杂得多):

def Main():
    subdirectory = IdentifySubDirectory()
    os.chdir(subdirectory)
    EditInputFile()
    qsub jobscript.sh
    os.chdir(parentdirectory)

如何仅使用我的 python 脚本和作业脚本来做到这一点?

以前我一直在使用 crontab 并每 x 小时运行一次,但这是一个非常不令人满意的情况,因为每次模拟需要不同的时间来运行,从而导致大量的死区时间。

谢谢你的帮助

4

2 回答 2

1

如果这是 TORQUE,您可以使用作业依赖项来获取您所描述的行为。作业依赖提交记录在此处,只需查找“依赖”一词,它就会带您找到它。

于 2013-12-11T17:58:49.040 回答
0

让您的作业脚本重新提交自己:

jobscript.bash:

#!/bin/bash
cd $PBS_O_WORKDIR
./pythonscript.py
qsub -N reiterateSim jobscript.bash 
于 2018-01-06T05:41:37.530 回答