0
在我的python腳本中,我試圖運行一些持久的下載過程,如下例所示,並且需要查找由check_output啓動的進程的PID:如何使用子進程check_output獲取子進程的PID
out = subprocess.check_output(["rsync","-azh","file.log",...])
有可能嗎?
在我的python腳本中,我試圖運行一些持久的下載過程,如下例所示,並且需要查找由check_output啓動的進程的PID:如何使用子進程check_output獲取子進程的PID
out = subprocess.check_output(["rsync","-azh","file.log",...])
有可能嗎?
可以使用Popen
而不是運行子:
import subprocess
proc = subprocess.Popen(["rsync","-azh","file.log",...], stdout=subprocess.PIPE)
out = proc.communicate()[0]
pid = proc.pid
一般來說,Popen
對象爲您提供了更好的控制和子進程的詳細信息,但需要更多的設置一個位。 (雖然不多。)您可以在official documentation中閱讀更多內容。