python获取全部进程的CPU、内存使用率

来源:互联网 发布:淘宝天猫优惠券antlm 编辑:程序博客网 时间:2024/05/29 09:04
import psutil,timedef 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 psutilimport reimport 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])


原创粉丝点击