2013-11-21 43 views
1

我有一個python腳本,它對輸入文件執行一些操作,然後使用qsub提交一個新作業。qsub作業鏈

只要這個新提交的作業完成,我想再次運行python腳本。所以基本上,這個python腳本的運行必須與前一個作業(python腳本本身提交的作業)的運行相關聯。

用代碼術語總結。我去到父目錄,鍵入:

./python_script.py 

的Python腳本的結構類似如下(這是很多,很多複雜的現實中):

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

我怎樣才能做到這一點只用我的python腳本和jobcript?

以前我一直使用crontab並每隔x個小時運行一次,但這是一個非常令人不滿意的情況,因爲每次模擬都需要不同的時間來運行,導致很多死區。

感謝所有幫助

回答

1

如果這是TORQUE,您可以使用工作依賴於獲得您所描述的行爲。工作依賴提交文件記錄在here,只需要找到依賴關係這個詞,它會幫你找到它。

0

有你的作業腳本重新提交自己:

jobscript.bash: 

#!/bin/bash 
cd $PBS_O_WORKDIR 
./pythonscript.py 
qsub -N reiterateSim jobscript.bash