python 获取CPU、内存、硬盘、进程状态信息 代码

#LOG:
#   test to check CPU ,memory and process state
#   built time 2017-05-19
#   coder:ly
 
 
#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
import os
import time
import psutil
import sys
import atexit
 
#the process name
PROCESS_NAME1="dwm.exe"
PROCESS_NAME2="QQ.exe"
PROCESS_NAME3="WeChat.exe"
PROCESS_NAME4="wininit.exe"
PROCESS_NAME5="360Tray.exe"
PROCESS_NAME6="conhost.exe"
 
 
#function of cpu total state
def GetCPUstate(time_count=1):              #cpu物理个数   +   cpu总使用率
    return (str(psutil.cpu_count(logical=False))+"-"+str(psutil.cpu_percent(time_count,0)) + "%")
 
 
 
#function of evryone state
def GetCPUsatus(time_count=1):              #每个cpu的使用率
    return (str(psutil.cpu_percent(time_count,1)) + "%")
 
 
#function of memory state
def GetMemorystate():
    phymem=psutil.virtual_memory()
    string =str(int(phymem.total / 1024 /1024))+"M"             #内存总数
    string +="-"
    string +=str(int(phymem.used / 1024 / 1024))+"M"            #已使用内存
    string += "-"
    string +=str(int(phymem.free / 1024 / 1024))+"M"            #剩余内存
    string += "-"
    sum_mem=str( int(phymem.used / 1024 / 1024) / int(phymem.total / 1024 /1024) * 100)         #内存使用率
    string +=sum_mem[0:5]+"%"
    return (string)
 
 
 
#function of disk state
def GetDisksatate():
    diskinfo=psutil.disk_usage('/')
    disk_str =str(int(diskinfo.total/1024/1024/1024))+"G"               #硬盘总容量
    disk_str +="-"
    disk_str +=str(int(diskinfo.used/1024/1024/1024))+"G"               #已使用硬盘容量
    disk_str += "-"
    disk_str +=str(int(diskinfo.free/1024/1024/1024))+"G"               #剩余容量
    disk_str += "-"
    sum_disk=str( int(diskinfo.used/1024/1024/1024) / int(diskinfo.total/1024/1024/1024) * 100)         #硬盘使用率
    disk_str +=sum_disk[0:5]+"%"
    return (disk_str)
 
 
#function of proscess state
def CheckProcess1state():
    for i in psutil.process_iter():
        if i.name() == PROCESS_NAME1:           #进程1   name+pid +state
            str_tmp=str(i.name())+"-"+str(i.pid)+"-"+str(i.status())
            return(str_tmp)
 
 
#function of proscess state
def CheckProcess2state():
    for i in psutil.process_iter():
        if i.name() == PROCESS_NAME2:           #进程2    name+pid+state
            str_tmp=str(i.name())+"-"+str(i.pid)+"-"+str(i.status())
            return(str_tmp)
 
 
#function of proscess state
def CheckProcess3state():
    for i in psutil.process_iter():
        if i.name() == PROCESS_NAME3:           #进程3    name+pid+state
            str_tmp=str(i.name())+"-"+str(i.pid)+"-"+str(i.status())
            return(str_tmp)
 
 
#function of proscess state
def CheckProcess4state():
    for i in psutil.process_iter():
        if i.name() == PROCESS_NAME4:           #进程4    name+pid+state
            str_tmp=str(i.name())+"-"+str(i.pid)+"-"+str(i.status())
            return(str_tmp)
 
 
#function of proscess state
def CheckProcess5state():
    for i in psutil.process_iter():
        if i.name() == PROCESS_NAME5:           #进程5    name+pid+state
            str_tmp=str(i.name())+"-"+str(i.pid)+"-"+str(i.status())
            return(str_tmp)
 
 
 
#function of proscess state
def CheckProcess6state():
    for i in psutil.process_iter():
        if i.name() == PROCESS_NAME6:           #进程6    name+pid+state
            str_tmp=str(i.name())+"-"+str(i.pid)+"-"+str(i.status())
            return(str_tmp)
 
 
 
#main
def GetInfoMain():
        time_count =1
        infomaition =GetCPUstate(time_count)
        infomaition +="-"
        infomaition +=GetCPUsatus(time_count)
        infomaition += "-"
        infomaition +=GetMemorystate()
        infomaition += "-"
        infomaition +=GetDisksatate()
        infomaition += "-"
        infomaition +=CheckProcess1state()
        infomaition += "-"
        infomaition += CheckProcess2state()
        infomaition += "-"
        infomaition += CheckProcess3state()
        infomaition += "-"
        infomaition += CheckProcess4state()
        infomaition += "-"
        infomaition += CheckProcess5state()
        infomaition += "-"
        infomaition += CheckProcess6state()
 
        #print (infomaition)
        return (infomaition)
 
 
#GetInfoMain()
#try:
#    while 1:
#        time.sleep(1)
#        strstr=GetInfoMain()
#        print (strstr)
#except:
#   print ("exit bd-CState.py")

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值