关于python的os.popen,异步IO的问题

思年华 2012-11-23 09:48:12
小弟写一个程序,用到了os.popen(cmd)方法,为得是获取系统执行cmd后的标准输出
但是,由于异步IO的原理,该方法只有在cmd执行完之后才放回数据流
现在的需求是要求及时获得cmd的输出,例如每隔2秒打印一次,直到cmd运行完成。谢谢
...全文
608 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
思年华 2012-11-23
  • 打赏
  • 举报
回复
在论坛上找到方法了,http://bbs.csdn.net/topics/340234292 谢谢各位了 import subprocess def main(): process1 = subprocess.Popen("python -u sub.py", shell=False, stdout = subprocess.PIPE, stderr=subprocess.STDOUT) #print process1.communicate()[0] while True: line = process1.stdout.readline() if not line: break print line if __name__ == '__main__': main()

37,741

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧