Gra*_*aul 6 python subprocess popen apt-get progress-bar
我正在研究一个简单的GUI Python脚本来在系统上执行一些简单的任务.其中一些工作涉及apt-get install安装一些包.
在这种情况下,我希望显示一个进度条,该进度条应该根据下载的进度进行更新,使用终端中apt-get接口中显示的小百分比.
但!我找不到获取进度信息的方法.管道或重定向apt-get的输出只给出静态行,显示每个包的"完成下载"消息,并subprocess.Popen()在我的脚本中读取相同的消息.
如何从apt-get的输出中读取以获取下载文件的百分比?
正如我经常说的,当您需要获得子流程的连续输出时,请使用pexpect而不是subprocess 等来运行子流程。pexpect 欺骗子进程,让其相信它正在终端上运行,因此子进程将提供它在真实终端上给出的输出类型......并且您可以捕获它并将其转换为您想要的任何类型的奇特输出!- )