2017-07-07 204 views
0

推出許多子過程我有一個Python腳本,啓動一個循環子過程的序列:如何停止python腳本從終端

for c in cmds: 
    subprocess.call(c, shell=True) 

當腳本在終端運行,我嘗試阻止它Ctrl + CCtrl + D然而,它會繼續啓動下一個子過程。我該如何終止整個python腳本?

+1

我認爲這是你的操作系統和開發環境的功能(如果有的話)。你在用什麼平臺? – Prune

+1

你試過'kill -9'嗎? – cdarke

+0

Linux(CentOS)。是的,最後我用'kill -9'殺死了它。 – platinor

回答

0

可能發生的事情是,ctrl-C被你的子進程攔截(運行在同一個終端上)並且永遠不會到達你的Python腳本。你可以做的是檢查subprocess.call的返回值,看看子進程是否被信號殺死,並決定是否要停止提交新進程。