我想從另一個Python腳本運行一個Python腳本,並獲得它的pid
,以便稍後可以殺死它。python - subprocess.Popen()。pid返回父腳本的pid
我試圖subprocess.Popen()
與參數shell=True', but the
pid attribute returns the
pid`父母的腳本,所以當我試圖殺死子進程,它殺死了父母。
這裏是我的代碼:
proc = subprocess.Popen(" python ./script.py", shell=True)
pid_ = proc.pid
.
.
.
# later in my code
os.system('kill -9 %s'%pid_)
#IT KILLS THE PARENT :(
它仍然殺死父母.. – farhawa
@farhawa:你可以更新你的問題,澄清發生了什麼?我理解你說,有一個Python解釋器產生一個產生另一個Python解釋器的shell,並且kill殺死了shell而不是所需的從屬解釋器。 – icktoofay