我正在尝试获取系统信息。我必须避免安装需要最新版本的 python 才能运行的第三方包和库或模块。这仍处于早期开发阶段,目前仅在 Ubuntu 10.04 上进行了测试,但我稍后会使用它。我无法获取有关内存使用的正确信息。
到目前为止,我所拥有的是:
#! /usr/bin/python
import platform
import multiprocessing
import os
print "\nEnumerating Available System Resources..."
print "\n++++++++++ OS Name and version ++++++++++"
print "Platform:", platform.system()
print "Kernel:", platform.release()
print "Distro:", platform.linux_distribution()
print "Architecture:", platform.architecture()
print "\n++++++++++ CPU Cores ++++++++++"
p = os.popen("ps aux|awk 'NR > 0{s +=$3};END{print s}'").read()
print "Cores:", multiprocessing.cpu_count(), '\nCPU Load:', p
print "\n++++++++++ System Memory ++++++++++\n"
def meminfo():
meminfo=dict()
with os.popen('cat /proc/meminfo') as f:
for line in f:
meminfo[line.split(':')[0]] = line.split(':')[1].strip()
return meminfo
if __name__=='__main__':
meminfo = meminfo()
print('Total Memory: {0}'.format(meminfo['MemTotal']))
print('Free Memory: {0}'.format(meminfo['MemFree']))
问题是最后一部分我得到了正确的内存统计信息,但我还需要以百分比格式添加“使用”部分。不过,我不知道如何正确计算。
我需要这个,因为我工作的一些系统可能在 ram 上被挖掘出来,我不能让脚本使机器崩溃,所以我还需要在这里添加一些东西来评估 RAM 百分比和 CPU 百分比,而不是如果存在某些条件,例如 CPU 负载超过 75% 且 RAM 剩余少于 5%,则继续。我想对这些功能有所了解,但现在主要关注的是获取内存使用百分比。我已经在这几个小时了,可以用一些新鲜的眼睛。谢谢!