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生成随机验证码(中文验证码)示例
Apr 03 Python
Python struct模块解析
Jun 12 Python
Python实现list反转实例汇总
Nov 11 Python
Python内置函数Type()函数一个有趣的用法
Feb 18 Python
Python简单计算文件夹大小的方法
Jul 14 Python
Python爬虫辅助利器PyQuery模块的安装使用攻略
Apr 24 Python
浅谈python中scipy.misc.logsumexp函数的运用场景
Jun 23 Python
Python使用修饰器进行异常日志记录操作示例
Mar 19 Python
10分钟用python搭建一个超好用的CMDB系统
Jul 17 Python
python 遍历pd.Series的index和value
Nov 26 Python
解析PyCharm Python运行权限问题
Jan 08 Python
用python对excel查重
Dec 07 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
THINKPHP+JS实现缩放图片式截图的实现
2010/03/07 PHP
PHP类继承 extends使用介绍
2014/01/14 PHP
php构造方法中析构方法在继承中的表现
2016/04/12 PHP
Yii中srbac权限扩展模块工作原理与用法分析
2016/07/14 PHP
Yii模型操作之criteria查找数据库的方法
2016/07/15 PHP
php生成无限栏目树
2017/03/16 PHP
php-app开发接口加密详解
2018/04/18 PHP
php使用json-schema模块实现json校验示例
2019/09/28 PHP
用showModalDialog弹出页面后,提交表单总是弹出一个新窗口
2009/07/18 Javascript
jquery实现点击TreeView文本父节点展开/折叠子节点
2013/01/10 Javascript
js去空格技巧分别去字符串前后、左右空格
2013/10/21 Javascript
js输入框邮箱自动提示功能代码实现
2013/12/10 Javascript
NodeJS学习笔记之Connect中间件模块(二)
2015/01/27 NodeJs
jQuery实现公告新闻自动滚屏效果实例代码
2016/07/14 Javascript
JS HTML5实现拖拽移动列表效果
2020/08/27 Javascript
jQuery树形控件zTree使用小结
2016/08/02 Javascript
BOM系列第一篇之定时器setTimeout和setInterval
2016/08/17 Javascript
js遍历json的key和value的实例
2017/01/22 Javascript
原生JS实现图片无缝滚动方法(附带封装的运动框架)
2017/10/01 Javascript
详解如何解决Vue和vue-template-compiler版本之间的问题
2018/09/17 Javascript
详解vue项目打包步骤
2019/03/29 Javascript
关于JS解构的5种有趣用法
2019/09/05 Javascript
Vue中的this.$options.data()和this.$data用法说明
2020/07/26 Javascript
vue实现给div绑定keyup的enter事件
2020/07/31 Javascript
Appium+Python自动化测试之运行App程序示例
2019/01/23 Python
pyenv虚拟环境管理python多版本和软件库的方法
2019/12/26 Python
python实现的批量分析xml标签中各个类别个数功能示例
2019/12/30 Python
Python实现一个优先级队列的方法
2020/07/31 Python
特罗佩亚包官方网站:Tropea
2017/01/03 全球购物
BAILEY 44官网:美国制造的女性服装
2019/07/01 全球购物
个人找工作自荐信格式
2013/09/21 职场文书
幼儿教师工作感言
2014/02/14 职场文书
医学院毕业生自荐信范文
2014/03/06 职场文书
2015年保险公司内勤工作总结
2015/05/23 职场文书
2016年社区文体活动总结
2016/04/06 职场文书
Python趣味挑战之用pygame实现简单的金币旋转效果
2021/05/31 Python