Я хотел бы запустить процесс, дать ему некоторое время поработать, а затем прочитать его вывод (последний вывод в порядке, мне все не нужно).Я попытался использовать следующий код:
def connect(interface):
proc = subprocess.Popen(['mycommand', interface], stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True)
time.sleep(10)
proc.terminate()
output, err = proc.communicate()
print(output)
К сожалению, каждый раз, когда он застревает при чтении вывода.Я также пытался использовать proc.read()
вместо communicate()
, но это не решило проблему.
Какой лучший способ обработки вывода в этом случае?
Заранее большое спасибо!