как получить непрерывный вывод из командной строки?

Следующий код получит вывод командной строки для выполнения другой программы:

import subprocess
p = subprocess.Popen('ls', stdout=subprocess.PIPE)
print p.communicate()[0]

Но некоторые программы, такие как wget, ffmpeg, будут отображать индикатор выполнения в командной строке и постоянно обновлять его значение, например:

12% [—] 105,691 50.6K / s eta 1ч 43м

Я пробовал приведенный выше код, чтобы получить вывод wget, но это не удалось. он не может получить вывод, пока wget не завершит выполнение, а вывод будет пустой строкой.

stackoverflow.com/questions/803265/   —  person Mark Ma    schedule 20.08.2013

См. также:  Как определить неудачные приведения с помощью оператора dynamic_cast?
Понравилась статья? Поделиться с друзьями:
IT Шеф
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: