当我们须要调用系统的命令的时候,最先考虑的os模块。用os.system()和os.popen()来进行操作。可是这两个命令过于简单,不能完毕一些复杂的操作,如给执行的命令提供输入或者读取命令的输出,推断该命令的执行状态,管理多个命令的并行等等。这时subprocess中的Popen命令就能有效的完...
分类:
编程语言 时间:
2014-10-16 23:12:23
阅读次数:
364
python检测linux下运行的进程#-*-coding:utf8-*-
importsubprocess
importsys
status_ok=0
status_critical=2
defc(d_name):
cmd=‘ps-ef|grep%s|grep-v"grep"‘%d_name
p=subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE)
ifp.wait()==0:
val=p.stdout.read()
ifd_name..
分类:
编程语言 时间:
2014-10-13 21:12:07
阅读次数:
244
当我们须要调用系统的命令的时候,最先考虑的os模块。用os.system()和os.popen()来进行操作。可是这两个命令过于简单,不能完毕一些复杂的操作,如给执行的命令提供输入或者读取命令的输出,推断该命令的执行状态,管理多个命令的并行等等。这时subprocess中的Popen命令就能有效的完...
分类:
编程语言 时间:
2014-10-11 14:52:35
阅读次数:
225
当我们须要调用系统的命令的时候,最先考虑的os模块。用os.system()和os.popen()来进行操作。可是这两个命令过于简单,不能完毕一些复杂的操作,如给执行的命令提供输入或者读取命令的输出,推断该命令的执行状态,管理多个命令的并行等等。这时subprocess中的Popen命令就能有效的完...
分类:
编程语言 时间:
2014-10-11 13:49:15
阅读次数:
311
#!/usr/bin/pythonimportreimportosimporturllibtry:importsimplejsonexceptImportError:os.popen(‘yuminstallpython-simplejson-y‘)try:importpycurlexceptImportError:os.popen(‘yuminstallpython-pycurl-y‘)defbuffer_line(monitor_log):buf=open("/etc/sae/rdc_buffer.txt"..
分类:
其他好文 时间:
2014-09-29 16:20:41
阅读次数:
244
#!/usr/bin/envpython
fromsubprocessimportPopen,PIPE
importurllib,urllib2
importshlex,re
defgetIfconfig():
p=Popen([‘ifconfig‘],stdout=PIPE)
returnp.stdout.read().split(‘\n\n‘)
defparseIfconfig(data):
macaddr=data.split(‘\n‘)[0].split()[-1]
ipaddr=data.spl..
分类:
编程语言 时间:
2014-09-27 19:43:20
阅读次数:
320
#!/usr/bin/envpython
importshlex
fromsubprocessimportPopen,PIPE
defget_ps():
cmd=‘psax-opid,ppid,cmd‘
p=Popen(shlex.split(cmd),stdout=PIPE)
returnp.stdout.readlines()[1:]
defsplit(s):
s=s.split()
returns[0],s[1],‘‘.join(s[2:])
defparser_ps(data):
p..
分类:
编程语言 时间:
2014-09-27 18:03:10
阅读次数:
339
#!/usr/bin/pythonimportreimportosimportsysimportpycurldefbuffer_line(monitor_log):buf=open("/data0/webinternal_monitor/%s"%monitor_log).read()bytes=os.popen(‘wc-c/data0/logs/%s‘%monitor_log).read().split("")[0]ifint(bytes)<int(buf):return0else:returnint(..
分类:
其他好文 时间:
2014-09-23 17:31:15
阅读次数:
234
在写python脚本的时候,经常需要调用系统命令,常用的python调用系统命令的方法主要有subprocess.call和os.popen。默认情况下subprocess.call的方法结果是返回值,即1或0,而os.popen则是命令运行的结果,可以用readlines(读取所有行,返回数组)或者read(读读取所有行,返回str..
分类:
编程语言 时间:
2014-09-18 03:09:33
阅读次数:
445
用execvp实现时,运行adb,如果adb 服务没有启动,会启动adb服务,启动adb服务时,pipe返回的管道在读的时候堵塞了。查看了popen的源码,发现popen是用sh -c来执行的,避免了这个问题不知道sh -c做了些什么操作,使得popen可以避免这个问题代码如下: 1 #ifndef...
分类:
系统相关 时间:
2014-09-16 18:56:00
阅读次数:
296