簡體   English   中英

從主 sh 腳本調用 5 個 sh 腳本

[英]Call 5 sh scripts from main sh script

我想要一些有關如何在 HPC 上正確設置復雜作業的幫助。 因此,在我的 python 代碼中的某個時刻,我想使用 os.system("bsub -K < mama.sh") 提交作業,我認為 -K arg 實際上會等待作業結束后再繼續。 所以現在我想從這個 mama.sh 腳本中調用 5 個並行運行的其他作業(kid1.sh、kid2.sh...kid5.sh)(以減少計算時間)。 這 5 個子腳本中的每一個都將運行 python 一段代碼。 mama.sh 應該等到所有其他 5 個作業都完成后再繼續。

我想到了這樣的事情:

#!/bin/sh
#BSUB -q hpc
#BSUB -J kids[1-5]
#BSUB -n 5
#BSUB -W 10:00
#BSUB -R "rusage[mem=6GB]"
#BSUB -R "span[hosts=1]"
# -- end of LSF options --

module load python3/3.8
python3 script%Ι.py
  ORRR
python3 script1.py
python3 script2.py
python3 script3.py
python3 script4.py
python3 script5.py

也許上面的內容根本沒有意義。 有沒有辦法真正做到這一點?

提前致謝

據我所知,您可以在不同的層次上實現目標。

通過兩種簡單的方法:

  1. 通過導入multiprocessing並行您的 python 代碼
  2. 通過&並行你的 shell 腳本,命令可以在后台執行。
    python3 script1.py &
    python3 script2.py 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM