python在linux系统下获取系统内存使用情况的方法


Posted in Python onMay 11, 2015

本文实例讲述了python在linux系统下获取系统内存使用情况的方法。分享给大家供大家参考。具体如下:

"""
Simple module for getting amount of memory used 
by a specified user's processes on a UNIX system.
It uses UNIX ps utility to get the memory usage for 
a specified username and pipe it to awk for summing up
per application memory usage and return the total.
Python's Popen() from subprocess module is used 
for spawning ps and awk.
"""
import subprocess
class MemoryMonitor(object):
  def __init__(self, username):
    """Create new MemoryMonitor instance."""
    self.username = username
  def usage(self):
    """Return int containing memory used by user's processes."""
    self.process = subprocess.Popen("ps -u %s -o rss | awk '{sum+=$1} END {print sum}'" % self.username,
                    shell=True,
                    stdout=subprocess.PIPE,
                    )
    self.stdout_list = self.process.communicate()[0].split('\n')
    return int(self.stdout_list[0])

将上面的代码保存为:memorymonitor.py

调用方法如下:

from memorymonitor import MemoryMonitor
memory_mon = MemoryMonitor('username')
used_memory = memory_mon.usage()

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
详解Python使用simplejson模块解析JSON的方法
Mar 24 Python
Python画图学习入门教程
Jul 01 Python
python自动化脚本安装指定版本python环境详解
Sep 14 Python
python cx_Oracle的基础使用方法(连接和增删改查)
Nov 19 Python
Python获取系统所有进程PID及进程名称的方法示例
May 24 Python
python绘制评估优化算法性能的测试函数
Jun 25 Python
python dataframe NaN处理方式
Dec 26 Python
python闭包、深浅拷贝、垃圾回收、with语句知识点汇总
Mar 11 Python
django 扩展user用户字段inlines方式
Mar 30 Python
Pandas将列表(List)转换为数据框(Dataframe)
Apr 24 Python
python regex库实例用法总结
Jan 03 Python
利用Python实现模拟登录知乎
May 25 Python
Python实现登录人人网并抓取新鲜事的方法
May 11 #Python
python实现中文输出的两种方法
May 09 #Python
python使用xlrd实现检索excel中某列含有指定字符串记录的方法
May 09 #Python
Python遍历指定文件及文件夹的方法
May 09 #Python
Python使用chardet判断字符编码
May 09 #Python
python操作ie登陆土豆网的方法
May 09 #Python
Python检测QQ在线状态的方法
May 09 #Python
You might like
PHP读取网页文件内容的实现代码(fopen,curl等)
2011/06/23 PHP
php解压文件代码实现php在线解压
2014/02/13 PHP
PHP采用自定义函数实现遍历目录下所有文件的方法
2014/08/19 PHP
php面向对象值单例模式
2016/05/03 PHP
asp.net下利用js实现返回上一页的实现方法小集
2009/11/24 Javascript
eval的两组性能测试数据
2012/08/17 Javascript
页面js遇到乱码问题的解决方法是和无法转码的情况
2014/04/30 Javascript
Javascript实现禁止输入中文或英文的例子
2014/12/09 Javascript
jQuery中:not选择器用法实例
2014/12/30 Javascript
window.setInterval()方法的定义和用法及offsetLeft与style.left的区别
2015/11/11 Javascript
每天一篇javascript学习小结(属性定义方法)
2015/11/19 Javascript
jQuery简单倒计时效果完整示例
2016/09/20 Javascript
jQuery生成假加载动画效果
2016/12/01 Javascript
Bootstrap导航条学习使用(一)
2017/02/08 Javascript
jQuery基于Ajax方式提交表单功能示例
2017/02/10 Javascript
js中toString()和String()区别详解
2017/03/23 Javascript
教你5分钟学会用requirejs(必看篇)
2017/07/25 Javascript
vue鼠标移入添加class样式,鼠标移出去除样式(active)实现方法
2018/08/22 Javascript
Vue.js页面中有多个input搜索框如何实现防抖操作
2019/11/04 Javascript
OpenLayers3实现对地图的基本操作
2020/09/28 Javascript
python正则分析nginx的访问日志
2017/01/17 Python
python如何实现反向迭代
2018/03/20 Python
浅谈利用numpy对矩阵进行归一化处理的方法
2018/07/11 Python
网易2016研发工程师编程题 奖学金(python)
2019/06/19 Python
python常用库之NumPy和sklearn入门
2019/07/11 Python
python实现图像检索的三种(直方图/OpenCV/哈希法)
2019/08/08 Python
Python使用matplotlib绘制三维参数曲线操作示例
2019/09/10 Python
python使用turtle库绘制奥运五环
2020/02/24 Python
Python3 用什么IDE开发工具比较好
2020/11/28 Python
CSS3动画animation实现云彩向左滚动
2014/05/09 HTML / CSS
简单html5代码获取地理位置
2014/03/31 HTML / CSS
运动会解说词200字
2014/02/06 职场文书
《有趣的发现》教学反思
2014/04/15 职场文书
《蟋蟀的住宅》教学反思
2016/02/17 职场文书
HTML+CSS+JS实现图片的瀑布流布局的示例代码
2021/04/22 HTML / CSS
Python办公自动化之教你如何用Python将任意文件转为PDF格式
2021/06/28 Python