广告
返回顶部
首页 > 资讯 > 操作系统 >python获取linux的系统信息
  • 709
分享到

python获取linux的系统信息

系统信息python 2023-01-31 05:01:27 709人浏览 八月长安
摘要

 python写的抓取linux系统主要信息的脚本,主要就是内存,硬盘、CPU之类的信息。   内存信息 / meminfo 返回dict #!/usr/bin/env Python def memory_stat():     mem =

 python写的抓取linux系统主要信息的脚本,主要就是内存,硬盘、CPU之类的信息。

 

  1. 内存信息 / meminfo 
  2. 返回dict 
  3. #!/usr/bin/env Python 
  4. def memory_stat(): 
  5.     mem = {} 
  6.     f = open("/proc/meminfo") 
  7.     lines = f.readlines() 
  8.     f.close() 
  9.     for line in lines: 
  10.         if len(line) < 2: continue 
  11.         name = line.split(':')[0] 
  12.         var = line.split(':')[1].split()[0] 
  13.         mem[name] = long(var) * 1024.0 
  14.     mem['MemUsed'] = mem['MemTotal'] - mem['MemFree'] - mem['Buffers'] - mem['Cached'] 
  15.     return mem 
  16.  
  17. CPU信息 / cpuinfo 
  18. 返回list,每核心一dict 
  19. #!/usr/bin/env python 
  20. def cpu_stat(): 
  21.     cpu = [] 
  22.     cpuinfo = {} 
  23.     f = open("/proc/cpuinfo") 
  24.     lines = f.readlines() 
  25.     f.close() 
  26.     for line in lines: 
  27.         if line == 'n': 
  28.             cpu.append(cpuinfo) 
  29.             cpuinfo = {} 
  30.         if len(line) < 2: continue 
  31.         name = line.split(':')[0].rstrip() 
  32.         var = line.split(':')[1] 
  33.         cpuinfo[name] = var 
  34.     return  
  35.  
  36. cpu负载信息 / loadavg 
  37. 返回dict 
  38. #!/usr/bin/env python 
  39. def load_stat(): 
  40.     loadavg = {} 
  41.     f = open("/proc/loadavg") 
  42.     con = f.read().split() 
  43.     f.close() 
  44.     loadavg['lavg_1']=con[0] 
  45.     loadavg['lavg_5']=con[1] 
  46.     loadavg['lavg_15']=con[2] 
  47.     loadavg['nr']=con[3] 
  48.     loadavg['last_pid']=con[4] 
  49.     return loadavg 
  50.  
  51. 运转时间 / Uptime 
  52. 返回dict 
  53. #!/usr/bin/env python 
  54. def uptime_stat(): 
  55.     uptime = {} 
  56.     f = open("/proc/uptime") 
  57.     con = f.read().split() 
  58.     f.close() 
  59.     all_sec = float(con[0]) 
  60.     MINUTE,HOUR,DAY = 60,3600,86400 
  61.     uptime['day'] = int(all_sec / DAY ) 
  62.     uptime['hour'] = int((all_sec % DAY) / HOUR) 
  63.     uptime['minute'] = int((all_sec % HOUR) / MINUTE) 
  64.     uptime['second'] = int(all_sec % MINUTE) 
  65.     uptime['Free rate'] = float(con[1]) / float(con[0]) 
  66.     return uptime 
  67.  
  68. 获取网卡流量信息 /proc/net/dev 
  69. 返回dict,单位byte 
  70. #!/usr/bin/env python 
  71. def net_stat(): 
  72.     net = [] 
  73.     f = open("/proc/net/dev") 
  74.     lines = f.readlines() 
  75.     f.close() 
  76.     for line in lines[2:]: 
  77.         con = line.split() 
  78.         """ 
  79.         intf = {} 
  80.         intf['interface'] = con[0].lstrip(":") 
  81.         intf['ReceiveBytes'] = int(con[1]) 
  82.         intf['ReceivePackets'] = int(con[2]) 
  83.         intf['ReceiveErrs'] = int(con[3]) 
  84.         intf['ReceiveDrop'] = int(con[4]) 
  85.         intf['ReceiveFifo'] = int(con[5]) 
  86.         intf['ReceiveFrames'] = int(con[6]) 
  87.         intf['ReceiveCompressed'] = int(con[7]) 
  88.         intf['ReceiveMulticast'] = int(con[8]) 
  89.         intf['TransmitBytes'] = int(con[9]) 
  90.         intf['TransmitPackets'] = int(con[10]) 
  91.         intf['TransmitErrs'] = int(con[11]) 
  92.         intf['TransmitDrop'] = int(con[12]) 
  93.         intf['TransmitFifo'] = int(con[13]) 
  94.         intf['TransmitFrames'] = int(con[14]) 
  95.         intf['TransmitCompressed'] = int(con[15]) 
  96.         intf['TransmitMulticast'] = int(con[16]) 
  97.         """ 
  98.         intf = dict( 
  99.             zip( 
  100.                 ( 'interface','ReceiveBytes','ReceivePackets', 
  101.                   'ReceiveErrs','ReceiveDrop','ReceiveFifo', 
  102.                   'ReceiveFrames','ReceiveCompressed','ReceiveMulticast', 
  103.                   'TransmitBytes','TransmitPackets','TransmitErrs', 
  104.                   'TransmitDrop', 'TransmitFifo','TransmitFrames', 
  105.                   'TransmitCompressed','TransmitMulticast' ), 
  106.                 ( con[0].rstrip(":"),int(con[1]),int(con[2]), 
  107.                   int(con[3]),int(con[4]),int(con[5]), 
  108.                   int(con[6]),int(con[7]),int(con[8]), 
  109.                   int(con[9]),int(con[10]),int(con[11]), 
  110.                   int(con[12]),int(con[13]),int(con[14]), 
  111.                   int(con[15]),int(con[16]), ) 
  112.             ) 
  113.         ) 
  114.  
  115.         net.append(intf) 
  116.     return net 
  117.  
  118. 磁盘空间使用 
  119. 使用内置python内置函数,返回dict,单位byte 
  120. #!/usr/bin/env python 
  121. def disk_stat(): 
  122.     import os 
  123.     hd={} 
  124.     disk = os.statvfs("/") 
  125.     hd['available'] = disk.f_bsize * disk.f_bavail 
  126.     hd['capacity'] = disk.f_bsize * disk.f_blocks 
  127.     hd['used'] = disk.f_bsize * disk.f_bfree 
  128.     return hd 

 

--结束END--

本文标题: python获取linux的系统信息

本文链接: https://www.lsjlt.com/news/188549.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python获取linux的系统信息
     python写的抓取linux系统主要信息的脚本,主要就是内存,硬盘、CPU之类的信息。   内存信息 / meminfo 返回dict #!/usr/bin/env python def memory_stat():     mem =...
    99+
    2023-01-31
    系统 信息 python
  • python获取linux系统信息的三种方法
    方法一:psutil模块 #!usr/bin/env python # -*- coding: utf-8 -*- import socket import psutil class NodeResource(ob...
    99+
    2022-06-04
    python 获取系统信息 python 获取Linux信息
  • python获取Linux信息
      刚开始学习Python,用Python写了一个获取Linux服务器信息的脚本,在debian和centos上测试通过。首先需要安装一个psutil库,在安装psutil之前需要安装python的开发工具包#debian  apt-get...
    99+
    2023-01-31
    信息 python Linux
  • python获取系统硬件信息
    github项目 https://github.com/giampaolo/psutil cpu,内存,etc. ...
    99+
    2023-01-31
    硬件 系统 信息
  • Python使用psutil获取系统信息
    psutil模块 用Python来编写脚本简化日常的运维工作是Python的一个重要用途。在Linux下,有许多系统命令可以让我们时刻监控系统运行的状态,如ps,top,free等等...
    99+
    2022-11-11
  • python获取linux中top信息
    import os,time,sysimport paramiko,pexpect 获取日期格式: def get_year_mon_day_hour_min_sec(): time_array = time.localtime()...
    99+
    2023-01-31
    信息 python linux
  • Linux系统下怎么获取主板信息
    这篇文章主要介绍Linux系统下怎么获取主板信息,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!什么是Linux系统Linux是一种免费使用和自由传播的类UNIX操作系统,是一个基于POSIX的多用户、多任务、支持多线...
    99+
    2023-06-13
  • Linux下如何使用Inxi获取系统信息
    这篇文章给大家分享的是有关Linux下如何使用Inxi获取系统信息的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Inxi 最初是为控制台和 IRC(网络中继聊天)开发的一个强大且优秀的命令行系统信息脚本。可以使用...
    99+
    2023-06-27
  • Python如何使用psutil获取系统信息
    三、psutil用Python来编写脚本简化日常的运维工作是Python的一个重要用途。在Linux下,有许多系统命令可以让我们时刻监控系统运行的状态,如ps,top,free等等。要获取这些系统信息,Python可以通过subproces...
    99+
    2023-05-15
    Python psutil
  • Python怎么使用psutil获取系统信息
    本篇内容介绍了“Python怎么使用psutil获取系统信息”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!用Python来编写脚本简化日常的...
    99+
    2023-07-06
  • Golang获取系统信息的实现
    目录问题提出golang 的编译选项获取系统信息本文介绍获取系统信息的方法,另外给出根据不同系统编译的方法。 问题提出 由于多年来接触了不同系统的兼容工程,对使用宏区分不同的代码一直...
    99+
    2022-11-13
  • python 获取Linux和Windows硬件信息
    linux获取linux硬件信息的方式,有很多。1.使用puppet或者saltstack2.直接读取/proc/xx文件,比如cpu信息,就是/proc/cpuinfo3.dmidecode4.psutil,它可以获取某些信息,但是对于C...
    99+
    2023-01-30
    硬件 信息 python
  • 怎么获取Linux系统中的内置模块信息
    怎么获取Linux系统中的内置模块信息?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。找出内置模块列表要得到内置模块列表,运行下面的命令。代码如下:$ cat /...
    99+
    2023-06-10
  • 利用Python获取操作系统信息实例
    前言 每一位运维人员都应该对自己所管理的机器配置很清楚,因为这对我们快速处理问题很有帮助,比如随着业务增长,突然某些机器负载上涨的厉害,这时候要排查原因,除了从应用程序、架构上分析外,当前硬件性能的分析应该...
    99+
    2022-06-04
    实例 操作系统 信息
  • Python脚本获取操作系统版本信息
    查看系统版本信息是一件家常便饭的事情,有时候需要将版本信息录入到资产管理系统中,如果每次手动的去查询这些信息再录入系统那么是一件令人呢头疼的事情,如果采用脚本去完成这件事情,那么情况就有所不同了。 在Pyt...
    99+
    2022-06-04
    脚本 操作系统 版本
  • SNMP系统信息获取工具onesixtyone
    SNMP系统信息获取工具onesixtyone...
    99+
    2023-06-04
  • 怎么在Linux系统中获取无线网卡信息
    这篇文章将为大家详细讲解有关怎么在Linux系统中获取无线网卡信息,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。iwpriv配置连接选项命令例:代码如下:[root@linux ~]# iw...
    99+
    2023-06-12
  • uniapp 获取系统信息的方法小结
    目录一、uni.getSystemInfo(OBJECT)二、uni.getSystemInfoSync()三、总结uni-app提供了异步(uni.getSystemInfo)和同...
    99+
    2022-11-16
    uniapp获取系统信息 uni.getSystemInfo uni.getSystemInfoSync
  • python使用wmi模块获取windows下的系统信息 监控系统
    Python用WMI模块获取Windows系统的硬件信息:硬盘分区、使用情况,内存大小,CPU型号,当前运行的进程,自启动程序及位置,系统的版本等信息。 本文实例讲述了python使用wmi模块获取win...
    99+
    2022-06-04
    监控系统 模块 系统
  • python获取mysql表信息
    使用python获取mysql相关信息,使用python执行mysql相关语句test1 #!/bin/env python #coding=utf-8 #by songry #date 2018-01-09 #time 11:18 #po...
    99+
    2023-01-31
    信息 python mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作