写得比较简单,支持-m -g -k选项

#!/usr/bin/python
#*-*coding:utf8*-*"""适用于在/proc/meminfo中提供了可用内存MemAvailable的系统使用"""from optparse import OptionParser
import sysparser = OptionParser()
parser.add_option("-k",dest="k",action="store_true",default=True,help="Display Meminfo KB")
parser.add_option("-m",dest="m",action="store_true",default=False,help="Display Meminfo MB")
parser.add_option("-g",dest="g",action="store_true",default=False,help="Display Meminfo GB")option, args = parser.parse_args()with open("/proc/meminfo") as meminfo:for i in meminfo:if i.startswith("MemTotal"):total_mem = i.split()total_mem = total_mem[1]continueelif i.startswith("MemAvailable"):free_mem = i.split()free_mem = free_mem[1]breakelse:passtotal_mem, free_mem = float(total_mem), float(free_mem)x = free_mem/total_memif option.k and (not option.m) and (not option.g):print("总内存为:%d" %total_mem + " kB")print("剩余可用内存为:%d" %free_mem + " kB")print("剩余内存可用比例为:%d" %(x*100) + "%" )
elif option.k and option.m and (not option.g):print("总内存为:%d" %(total_mem/1024) + " MB")print("剩余可用内存为:%d" %(free_mem/1024) + " MB")print("剩余内存可用比例为:%d" %(x*100) + "%" )
elif option.k and (not option.m) and option.g:print("总内存为:%.2f" %(total_mem/1024/1024) + " GB")print("剩余可用内存为:%.2f" %(free_mem/1024/1024) + " GB")print("剩余内存可用比例为:%d" %(x*100) + "%" )
else:pass

转载于:https://blog.51cto.com/270142877/1929976

使用Python统计Linux系统内存相关推荐

  1. 使用Python获取Linux系统的各种信息

    From: http://www.jb51.net/article/52058.htm 这篇文章主要介绍了使用Python获取Linux系统的各种信息,例如系统类型.CPU信息.内存信息.块设备等,需 ...

  2. linux系统内存执行elf的多种方式

    一.前言 无文件(fileless)恶意软件攻击现在已经越来越流行,这一点并不奇怪,因为这种技术通常不会留下蛛丝马迹.本文的重点不是介绍如何在Windows RAM中执行程序,我们的目标是GNU/Li ...

  3. 操作系统课程设计:Linux系统调用/基于模块的文件系统/Linux驱动/统计Linux系统缺页的次数 整合

    目录 一.可选题目 题目1:新增Linux系统调用 题目2:实现基于模块的文件系统 题目3:新增Linux驱动程序 题目4:统计Linux系统缺页的次数 二.操作顺序 附录:参考资料 题1 题2 题3 ...

  4. Linux系统内存知识总结

    点击上方"朱小厮的博客",选择"设为星标" 后台回复"书",获取 来源:22j.co/dJ29 Linux 内存是后台开发人员,需要深入了解 ...

  5. Linux系统内存管理之伙伴系统分析 - 旭东的博客 - 博客园

    Linux系统内存管理之伙伴系统分析 - 旭东的博客 - 博客园 Linux系统内存管理之伙伴系统分析 今天去面试,一位面试官提到了内存管理的伙伴系统,当时就懵了,因为根本就没有听说过.晚上回来在实验 ...

  6. Problem 64 如何设置Linux系统内存回收的阀值?

    Problem 64 如何设置Linux系统内存回收的阀值? Ans: Linux内核的策略是最大程度的利用内存cache 文件系统的数据,提高IO速度,虽然在机制上是有进程需要更大的内存时,会自动释 ...

  7. sql怎么把小数变百分比_云计算基本技能有哪些 怎么监控Linux系统内存

    云计算基本技能有哪些?怎么监控Linux系统内存?Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口,它接收用户输入的命令并把它送入内核去执行.掌握Shell脚本是对云计算运维工程师的 ...

  8. Linux 系统内存分析

    1. 内存基本介绍 1.计算机基本结构: 电脑之父--冯·诺伊曼提出了计算机的五大部件:输入设备.输出设备.存储器.运算器和控制器 如图: 输入设备:键盘鼠标等 CPU:是计算机的运算核心和控制核心, ...

  9. 嵌入式linux+io+优化,嵌入式Linux系统内存优化使用方法研究

    [摘要] 嵌入式系统功能的提高,占用了较大内存空间,继而时常出现运行无响应.基于用户方面看,由于系统内存问题影响运行,针对系统内存与进程应用状态研究,可以调整系统数值与执行文件elf分析,进行系统优化 ...

最新文章

  1. DeepMind最新发现!神经网络的性能竟然优于神经符号模型
  2. 20210620 Successive projection algorithm(连续投影法)
  3. netty系列之:自定义编码解码器
  4. Pointcut is not well-formed: expecting #39;name pattern#39; at character position 36
  5. esim办理出现差错_经营二氧化碳如何办理危化证?快来看!
  6. # hive打不开,提示节点过少,进入安全模式~~
  7. 地表水预测模型软件_前沿科技 | 中科院等科学家合作研究开发出高速列车关键构件疲劳寿命预测软件系统...
  8. 又栽了?苹果侵犯高通三项专利需赔偿3100万美元
  9. 傅里叶变换常用公式表_25个常用公式计算表+7套施工测量计算表,全自动计算,测量无压力...
  10. 2010年的20款游戏
  11. 转载:ASP.net页面跳转方式三种
  12. 我们是这样写升级日志的,处处可以体现人文情怀
  13. Oracle调优检查点
  14. Vant中List组件immediate-check=false无效
  15. 精简版XP的IIS安装
  16. mybatis 使用简单的增删查改
  17. msvcr71.dll 等相关DLL文件类型缺失下载
  18. winfrom MonthCalendar的mousedown方法 获得 选择日期
  19. sql compact 转mysql_如何将数据导入到 SQL Server Compact Edition 数据库中(四)
  20. ant 的详细的入门教程

热门文章

  1. java struts2 session mysql 内存不足_Java - 用户在线的数据库实现方法和内存实现方法...
  2. maven只打包java目录_ssm项目中maven对resources目录打包的路径_默认路径,自定义路径...
  3. 中南大学计算机复试题,中南大学计算机05年复试试题
  4. 尝试编辑虚拟磁盘时服务器遇到错误,虚拟磁盘Linux服务端测试及故障处理有哪些呢?...
  5. RocketMQ 实战 集群监控平台搭建
  6. GDataXMLNode:xml解析库
  7. 删不干净_华为手机照片删了又删,内存还是严重告急,终于知道是为什么了!...
  8. 数据分析 从零开始到实战,Pandas读写CSV数据
  9. python电子时钟包装盒_python 电子时钟
  10. 生日游戏html,小朋友过生日室内游戏