背景

介绍一个处理进程的实用工具,这个是一个第三方库。应用主要有类似ps、cd、top,还有查看硬盘、内存使用情况等。

推荐的理由主要有 2 个,第一个是跨平台的,不管是OSX、Centos、Windows还是SUSE、Ubuntu,都可以用这个工具,对于运维来说,非常实用;第二个是强于os.system()、os.popen()以及subprocess,需要对回显处理,但是Psutil只需要对结果,像处理 Dict 一样「返回的属性因平台而异」,就可以轻松拿到想要的东西。

安装

安装非常简单,用pip就可以上路了。

pip install psutil # python2

pip3 install psutil # python3

CPU相关

获取CPU数量:

import psutil # 后面不再加这句代码

psutil.cpu_count() # cpu数量

psutil.cpu_count(logical=True) # 逻辑CPU的数量

获取CPU每个CPU当前利用率:

psutil.cpu_percent(interval=1) # 1 秒后线束总的利用率结果

psutil.cpu_percent(interval=0, percpu=True) # 立马显示每个CPU结果

获取CPU的频率,包括最低、高频率,以及当前频率:

psutil.cpu_freq(percpu=True) #获取每个CPU的频率

内存

获取物理内存的利用情况:

psutil.virtual_memory() # 有点类似 free 命令

获取 Swap 交换内存:

psutil.swap_memory() # 有点类似 free 命令

硬盘

获取硬盘分区,返回的是分区格式类型,挂载点:

psutil.disk_partitions(all=False) #类似lsblk命令

获取硬盘利用率,返回的是使用多少、还剩多少,以及使用率:

psutil.disk_usage("C:\") # 查看C盘

网络

获取当前网络的IO情况,返回IO的字节、包的数量:

psutil.net_io_counters()

获取当前连接数,对于这个需要root用户权限,因此在运行python的时候加上sudo:

psutil.net_connections() # 返回连接详细信息

获取网口信息和状态:

psutil.net_if_addrs() # 获取网络接口信息

psutil.net_if_stats() # 获取网络接口状态

进程

获取所有进程PID:

psutil.pids() # 所有进程ID

可以通过指定进程PID来获取,进程名称、进程路径、状态以及结束进程等。

pid = psutil.Process(8888) # 获取进程pid为8888的进程

pid.name() # 进程名称

pid.status() # 进程状态

pid.terminate() # 终止经常

Python常用库-Psutil的更多相关文章

  1. python 常用库整理

    python 常用库整理 GUI 图形界面 Tkinter: Tkinter wxPython:wxPython pyGTK:PyGTK pyQt:pyQt WEB框架 django:django w ...

  2. python常用库安装网址

    python常用库安装网址如下: http://pypi.python.org/pypi

  3. windows下python常用库的安装

    windows下python常用库的安装,前提安装了annaconda 的python开发环境.只要已经安装了anaconda,要安装别的库就很简单了.只要使用pip即可,正常安装好python,都会 ...

  4. Python常用库整理

    Python常用库整理 Python中到底有哪些库会让程序员爱不释手?以至于一次上瘾,造成永久性伤害(这句话好像在哪里见过),今天我们就来整理一番这样的库,欢迎各位在评论区或者私信我添加或者修改相关库 ...

  5. python常用库

    本文由 伯乐在线 - 艾凌风 翻译,Namco 校稿.未经许可,禁止转载!英文出处:vinta.欢迎加入翻译组. Awesome Python ,这又是一个 Awesome XXX 系列的资源整理,由 ...

  6. Python常用库大全

    环境管理 管理 Python 版本和环境的工具 p – 非常简单的交互式 python 版本管理工具. pyenv – 简单的 Python 版本管理工具. Vex – 可以在虚拟环境中执行命令. v ...

  7. Python常用库大全,看看有没有你需要的

    作者:史豹链接:https://www.zhihu.com/question/20501628/answer/223340838来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  8. python常用库(转)

    转自http://www.west999.com/info/html/wangluobiancheng/qita/20180729/4410114.html Python常用的库简单介绍一下 fuzz ...

  9. python 常用库收集

    读者您好.今天我将介绍20个属于我常用工具的Python库,我相信你看完之后也会觉得离不开它们.他们是: Requests.Kenneth Reitz写的最富盛名的http库.每个Python程序员都 ...

随机推荐

  1. C的变量类型、作用域与生命周期的总结

    C的变量类型.作用域与生命周期的总结 最近在看"C Programing Language" (Kernighan, Ritchie)关于外部变量的讨论,之前在学C的时候对这些ex ...

  2. SpringCloud-Nacos/OpenFien/Gateway的基本介绍及快速上手

    一.Spring-Cloud-Alibaba-Nacos 注册中心 1.下载.安装 Nacos 下载地址:https://github.com/alibaba/nacos/releases 下载后解压 ...

  3. JSP学习笔记(三)

    jsp与javabean 编写javabean 创建与使用bean 获取和修改bean的属性 javabean是一种java类,是通过封装属性和方法成为具有某种功能或处理某个业务的对象,简称bean, ...

  4. Ubuntu系统在Anaconda中安装Python3.6的虚拟环境

    原因:Anaconda的python版本是3.7的,TensorFlow尚不支持此版本,于是我们创建一个Python的虚拟环境以支持TensorFlow 创建tf环境 conda create --n ...

  5. pip安装超时问题-pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.

    手动设置延时:(推荐) pip --default-timeout=100 install nibabel --或者不使用缓存pip  --no-cache-dir install Pillow 更改 ...

  6. 搭建脚手架cli2.x环境

    Vue脚手2.x架环境搭建 一.环境搭建 1.安装node 去官网下载node安装包 傻瓜式安装 万一安装后终端没有node环境,要进行node环境变量的配置 可以通过node提供的npm包管理器安装 ...

  7. idea 本地代码被覆盖问题

    一不小心误操作先执行更新操作怎么办!辛辛苦苦工作一下午的代码全被覆盖了,心里紧张死了!不过别着急,还好用的idea,请看如图操作! 1.点击鼠标右键 => 2.点击Local History = ...

  8. PTA数据结构与算法题目集(中文) 7-37 模拟EXCEL排序 (25 分)

    PTA数据结构与算法题目集(中文)  7-37 模拟EXCEL排序 (25 分) 7-37 模拟EXCEL排序 (25 分)   Excel可以对一组纪录按任意指定列排序.现请编写程序实现类似功能. ...

  9. css进阶选择器

    后代选择器 用空格隔开 选择div标签下的p标签下的a标签 div p a 选择class为parent标签下的p标签下的a标签 .parent p a 后代选择器可以是标签.类.id的混合体 后代选 ...

  10. tp6源码解析-第二天,ThinkPHP6编译模板流程详解,ThinkPHP6模板源码详解

    TP6源码解析,ThinkPHP6模板编译流程详解 前言:刚开始写博客.如果觉得本篇文章对您有所帮助.点个赞再走也不迟 模板编译流程,大概是: 先获取到View类实例(依赖注入也好,通过助手函数也好) ...