我正在用python3.4子進程運行一個命令。該命令有2個選項,一個標準和一個交互。問題是,如果我在標準模式下運行它,check_process立即返回。我也檢查了運行它與subprocess.call
,然後在兩種模式下運行命令需要更長的時間。 總之Check_output立即返回
subprocess.check_output([command]) //returns immediately
subprocess.check_output([command, "-i"]) // takes longer to run, returns output
subprocess.call([command]) // also takes longer to run
的命令運行一個去程序,其中,在所述非交互模式的情況下,我禁止輸出。是否有可能因爲此check_output立即返回?從文檔中我知道它應該等待子進程返回。
我已經檢查了從python腳本之外運行的命令,並且在交互式和標準模式下運行需要「一點點」。
首先檢查check_output是否引發異常,或者只是返回? – Laurijssen
你確定你看到stderr嗎?試試:'print('它應該是可見的',file = sys.stderr)'。 – jfs