Python psutil简单示例

Python psutil简单示例,利用psutil编写简单的检测小脚本

0.安装psutil模块
  psutil官网:https://pythonhosted.org/psutil/
  下载:

# wget https://pypi.python.org/packages/57/93/47a2e3befaf194ccc3d05ffbcba2cdcdd22a231100ef7e4cf63f085c900b/psutil-5.2.2.tar.gz#md5=bb98d48796cd76d9ccee871aad720f9c

   解压:

tar xf psutil-5.2.2.tar.gz

  安装:

cd psutil-5.2.2/
rpm -qa | grep “python-devel” || yum -y install python-devel && python setup.py install
[ $? -eq 0 ] && echo “Install OK” || echo “Install fail”

当出现Install OK时,则证明psutil安装完成

  编写python脚本

#!/usr/bin/python
#Filename:pustil_free.py

#导入psutil 和 os
import psutil,os

#定义文件
file = open(r’log.txt’,’a’)

#获取已经已经使用的内存
free_used = psutil.virtual_memory().used

#获取总内存
free_total = psutil.virtual_memory().total

#计算使用内存百分数
percentage_free = free_used * 1.0 / free_total * 100

#当free>80时
if percentage_free >= 80:
templist = []

#获取所有进程的pid
for pid in psutil.pids():
del templist[:]
p = psutil.Process(pid)

#当使用内存梁不等于0时执行此if
if p.memory_percent() != 0 :

#获取内存的名字
templist.append(p.name())

#获取内存消耗的百分比
templist.append(p.memory_percent())
temp_value = templist

#重定向值
print >> file ,(templist[0],templist[1])

#清楚文件
file.close()

########################################################################
#发送邮件模块 sendmail(‘log.txt’)
#######################################################################

#删除log文件以便下次执行脚本重新生成
os.remove(‘log.txt’)

:http://www.linuxidc.com/Linux/2017-10/147885.htm