簡體   English   中英

Python subprocess.PIPE重定向到文件

[英]Python subprocess.PIPE redirect to file

我有以下代碼。 myprg必須在腳本退出后運行。 但是在退出之前,我想等待myprg發出mystring ,然后將其余的stderr消息重定向到mylogfile ,然后退出。 這有可能嗎? 我嘗試了以下操作,但python腳本未退出。 我要去哪里錯了?

import subprocess
proc = subprocess.Popen(myprg, stderr=subprocess.PIPE)

for line in iter(proc.stderr.readline,'')
if check_string in line:
    break

fh = open (mylogfile,'w')

proc.stderr = fh.fileno()

編輯:通過使myprg向標准輸出發出check_string ,我暫時解決了這個問題。 這不是最佳選擇,但暫時有效。

您不應該調用proc.communicate()退出腳本嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM