这是我的问题的后续内容,无法(似乎)得到解决here。我遇到的问题是我正在开发一个Python脚本,以便在需要调用外部脚本/程序的集群上运行,并在继续之前等待它们完成(否则它需要的数据不会在那里)
要在群集上运行脚本,需要由shell脚本提交。这就是导致我出现问题的原因,因为我通过Python执行shell但shell运行脚本/程序并在所述脚本/程序完成之前自行关闭。这使得Python认为它已经完成,因此它仍在继续。
我花了更长的时间来承认尝试通过谷歌和这个网站来解决这个问题并且正在画一个空白,因为它似乎应该等待,它只是没有。
我已经附上了一个示例shell脚本,并且愿意尝试几乎任何东西。
编辑澄清:
此脚本是用于启动脚本/程序的示例.sh文件。在这个例子中,它启动了一个名为" Test.py"的python脚本。此.sh文件将通过队列系统使用命令" qsub ****提交给集群.sh"其中****是shell名称。这是通过终端完成的,或者在我的情况下,通过另一个Python脚本(需要知道其他进程何时完成)。
此shell脚本在退出之前不会等待Test.py完成。这就是导致我所有问题的原因。
#!/bin/bash
#
#PBS -l walltime=1:59:59,nodes=1:ppn=1
#PBS -j oe
#PBS -m ae
#
#-------------------------------------------------
#
cd ${HOME}/ERA-Primary-Folder
#
python ./Test.py
很抱歉,如果我自己做了一个新问题就违反了规则。这似乎是一个新问题,因为我的原始问题是关注它的Python方面,而这主要关注shell脚本。
有任何问题请问。提前感谢任何试图帮助我的人!