转载:python获取全部进程的CPU、内存使用率
转载:http://blog.csdn.net/swiftshow/article/details/8109322
import psutil,time
def getProcessInfo(p):
"""取出指定进程占用的进程名,进程ID,进程实际内存, 虚拟内存,CPU使用率
"""
try:
cpu = int(p.get_cpu_percent(interval=0))
rss, vms = p.get_memory_info()
name = p.name
pid = p.pid
except psutil.error.NoSuchProcess, e:
name = "Closed_Process"
pid = 0
rss = 0
vms = 0
cpu = 0
return [name.upper(), pid, rss, vms, cpu]
def getAllProcessInfo():
"""取出全部进程的进程名,进程ID,进程实际内存, 虚拟内存,CPU使用率
"""
instances = []
all_processes = list(psutil.process_iter())
for proc in all_processes:
proc.get_cpu_percent(interval=0)
#此处sleep1秒是取正确取出CPU使用率的重点
time.sleep(1)
for proc in all_processes:
instances.append(getProcessInfo(proc))
return instances获取进程ID
import psutil
import re
import sys
def processinfo(x):
p = psutil.get_process_list()
for r in p:
aa = str(r)
f = re.compile(x,re.I)
if f.search(aa):
# print aa.split("pid=")[1].split(",")[0]
print aa.split("pid=")
processinfo(sys.argv[1])
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
