Python:如何得到Popen的输出?

from:http://www.cnblogs.com/bluescorpio/archive/2010/05/04/1727020.html

最近在用subprocess中的Popen做个磁盘监控小程序,但是在使用ps = Popen("df -h", shell=True, stdout=PIPE, stderr=PIPE)之后,再使用output_lines = ps.stdout.readlines()的时候,output_lines总是内容为空,有哪位知道是什么原因么?

btw:我是在windows下设计这个程序的

 

复制代码
#!/usr/bin/env python #coding=utf-8 from subprocess import Popen, PIPE import re
def disk_space(pattern="2[0-9]%", message="CAPACITY WARNING"):     ## take shell command output     ps = Popen("df -h", shell=True, stdout=PIPE, stderr=PIPE)     output_lines = ps.stdout.readlines()     for line in output_lines:         line = line.strip()         if re.search(pattern, line):             print "%s %s" %(message, line)              if __name__ == '__main__':     disk_space

posted on   浪子回头jin不换  阅读(1394)  评论(0编辑  收藏  举报

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8
点击右上角即可分享
微信分享提示