原文链接: https://www.jianshu.com/p/a4fe69f38eba
脚本内容如下:
下面所以当图片代码都是在一个文件中的,当然也可把函数拆解出来使用。
容量装换工具
获取 CPU 数据的函数
打印 CPU 数据的函数
获取内存数据的函数
打印内存数据的函数
获取网卡数据的函数
addrs
数据结构解析说明(这部分不属于脚本中的代码)
addrs 是个列表,其数据像下面的样子:
[snic(family=<AddressFamily.AF_INET: 2>,
address='172.16.153.134',
netmask='255.255.255.0',
broadcast='172.16.153.255',
ptp=None),
snic(family=<AddressFamily.AF_INET6: 10>,
address='fe80::20c:29ff:fe11:610a%eth0',
netmask='ffff:ffff:ffff:ffff::',
broadcast=None,
ptp=None),
snic(family=<AddressFamily.AF_PACKET: 17>,
address='00:0c:29:11:61:0a',
netmask=None,
broadcast='ff:ff:ff:ff:ff:ff',
ptp=None)
]
上面的 get_net_info()
函数最终得到的信息(这部分不属于脚本中的代码):
{
'eth0': {'nic_stat': True, 'ip': '172.16.153.160', 'netmask': '255.255.255.0'},
'eth1': {'nic_stat': True, 'ip': '10.18.43.24', 'netmask': '255.255.255.0'},
'io_info': {'bytes_sent': '72.4G', 'bytes_recv': '3.2G', 'packe_sent': 51617898,'packe_recv': 23959477}
}
为了实验效果,eth2 是关闭的网卡,命令:
ifdown eth2
; 重新启动此网卡执行命令:ifup eth2