python之cpu性能检测脚本

环境:

ubuntu 14.04+python2.7

功能说明:

按时间间隔持续进行cpu占用率的检测,当cpu负载超过%60时,进行提示,并且可以根据进程名字杀死该进程

代码:

<span style="font-size:18px;">#coding:utf-8
import os
import time
print "cpu dedecting"
flag=True
while flag:
	os.system(r"top -n 1 >file1.txt")#运行top命令,将结果存入file1.txt
	os.system(r"grep 'Cpu(s)' file1.txt >file3.txt")#将cpu运行比列所在的行提取出来,放入file3.txt
	import Tkinter
	import tkMessageBox
	def show():
    		tkMessageBox.showinfo(title='warning', message='your cpu is overload,please kill some unnessary processes')
 

	file3=open("file3.txt",'r')
	for line in file3.readlines():
		a=line.strip()
		for line2 in a.split(" ")[1:2]:#对于每一行,提取出cpu占用的百分比
			if float(line2)>60: #将str类型强制转换成float,并进行比较,超出弹框
				show()
				print "目前正在运行的进程:\n"
				os.system("ps")
				os.system("ps 1> file5.txt")
				kill_one=raw_input("input the process you want to kill\n")
				#os.system(r"grep "+kill_one +"file5.txt >file6.txt")
				str2="grep "+kill_one +" file5.txt >file6.txt"
				print str2
				os.system(str2)
				file6=open("file6.txt",'r')
				for line3 in file6.readlines():
					b=line3.strip()
					for line4 in b.split(" ")[0:1]:
						str6="kill -9 " +line4
						os.system(str6)
						print str6
				
				
				break
			
			
	file3.close()
	print "END"
	time.sleep(20)
	</span>
自我总结:

这个脚本很憋足,好歹是实现了简易功能,但是不足的地方是:1使用不便,应该是加上图像化操作界面,我学学着一块,后期完成一个easy+的任务管理器样子的图形界面 2.就是在python中调用shell命令,总感觉怪怪的,但是暂时没有想到更好的解决办法。

遇到的问题:

在编程过程中有个问题,就是在提取列的时候,本来打算用awk但是,直接使用awk进行列提取没有问题,在Python中调用就出现问题,提醒出乎意料的字符'.',查资料也没弄明白~此路不通记载下来。后期就使用split函数进行列提取。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值