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-.tar.gz
安装:
cd psutil-/ rpm -qa | grep "python-devel" || yum -y install python-devel && python setup.py install [ $? -eq ] && 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')