我有攪拌器Python腳本,其中有Python的subprocess.call不等待進程結束攪拌機
subprocess.call(os.path.abspath('D:/Test/run-my-script.sh'),shell=True)
其次是取決於這個shell腳本來完成許多其他的代碼。會發生什麼,它不會等待它完成,我不知道爲什麼?我甚至用Popen
代替call
試圖如圖所示:
p1 = subprocess.Popen(os.path.abspath('D:/Test/run-my-script.sh'),shell=True)
p1.wait()
,我嘗試使用commuincate,但它仍然沒有奏效:
p1 = subprocess.Popen(os.path.abspath('D:/Test/run-my-script.sh'),shell=True).communicate()
這個shell腳本在Mac OS的偉大工程(轉換路後)並在使用時等待subprocess.call(['sh', '/userA/Test/run-my-script.sh'])
但在Windows上這是發生了什麼,我在Blender中運行下面的python腳本,然後一旦它進入子進程行Git bash
打開並運行shell腳本,而攪拌機不等待它完成它只是在其控制檯打印Hello
而無需等待Git Bash完成。任何幫助?
import bpy
import subprocess
subprocess.call(os.path.abspath('D:/Test/run-my-script.sh'),shell=True)
print('Hello')
,當你運行'在Windows上會發生什麼d:/測試/運行我的-script.sh'命令行?它是否立即返回? – AShelly
你可以發佈bash腳本嗎? –