#一键获取本机硬盘信息、内存信息,cup 信息,IP 地址信息
此脚本是使用python语言一键获取本机的信息
#!/usr/bin/env python3
#一键获取硬盘信息、内存信息,cup 信息,IP 地址信息
##by 2021/03/13 lining
import subprocess
ret1 = subprocess.getoutput("lsblk").splitlines()
ret2 = subprocess.getoutput("free -h").splitlines()
ret3 = subprocess.getoutput("cat /proc/cpuinfo").splitlines()
ret4 = subprocess.getoutput("ip a").splitlines()
disk = {}
mem = {}
cpu = {}
ip = {}
disk_ls = {} #创建磁盘临时字典
disk_lb = [] #创建磁盘列表
#磁盘信息
for dk in ret1:
if "disk" in dk:
disk_name = dk.split()[0]
disk_size = dk.split()[3] #切出所用信息
disk_ls["磁盘名"] = disk_name
disk_ls["磁盘大小"] = disk_size #将磁盘信息存入字典
disk_lb = [disk_ls] #将字典存入列表,防止字典键值重名导致,value更换
disk["disk"] = disk_lb #磁盘信息通过列表嵌套进字典
#内存信息
for mm in ret2:
if "Mem" in mm:
mem_total = mm.split()[1]
mem_free = mm.split()[3] #切出所用信息
mem["内存总量"] = mem_total
mem["剩余内存"] = mem_free #将内存信息存入字典
#CPU信息
cpu_number = 0
for cp in ret3:
if "model name" in cp:
cpu_name = cp.split(":")[1] #切出所用信息
cpu_number = cpu_number + 1 #统计CPU数量
cpu["CPU型号"] = cpu_name
cpu["CPU数量"] = cpu_number #将CPU信息存入字典
#IP信息
for i_p in ret4:
if "inet " in i_p and "127" not in i_p:
ip_network = i_p.split()[-1]
ip_ipv4 = i_p.split()[1] #切出所用信息
ip[ip_network] = ip_ipv4.split("/")[0] #将IP信息存入字典
system_info = {"disk":disk,"mem":mem,"cpu":cpu,"ip":ip}
print(system_info)