一键获取硬盘信息、内存信息,cup 信息,IP 地址信息

#一键获取本机硬盘信息、内存信息,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)


  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值