python psutila模块
#!/usr/bin/env python
#coding:utf-8
# qianxiao996精心制作
#博客地址:https://blog.csdn.net/qq_36374896
import psutil
import datetime
import time
# 系统用户
#users_count = len(psutil.users())
#
# >>> for u in psutil.users():
# ... print(u)
# ...
# suser(name='root', terminal='pts/0', host='61.135.18.162', started=1505483904.0)
# suser(name='root', terminal='pts/5', host='61.135.18.162', started=1505469056.0)
# >>> u.name
# 'root'
# >>> u.terminal
# 'pts/5'
# >>> u.host
# '61.135.18.162'
# >>> u.started
# 1505469056.0
# >>>
#users_list = ",".join([u.name for u in psutil.users()])
#print(u"当前有%s个用户,分别是 %s" % (users_count, users_list))
print('-----------------------------用户信息---------------------------------------')
# 用户信息
for u in psutil.users():
print("当前登陆用户:"+u.name)
print("IP 地址:"+u.host)
print('-----------------------------CPU信息---------------------------------------')
# CPU信息
cpu_num = "物理CPU个数: %s" % psutil.cpu_count(logical=False)
cpu = u"cup使用率: " + (str(psutil.cpu_percent(1))) + '%'
print(cpu_num)
print(cpu)
print('-----------------------------时间信息---------------------------------------')
now_time = u"系统当前时间: " + time.strftime('%Y-%m-%d-%H:%M:%S', time.localtime(time.time()))
start_time = u"系统开机时间: " + datetime.datetime.fromtimestamp(psutil.boot_time()).strftime(
"%Y-%m-%d %H: %M: %S") + '\n'
print(now_time)
print(start_time)
#网卡,可以得到网卡属性,连接数,当前流量等信息
print('-----------------------------流量信息---------------------------------------')
net = psutil.net_io_counters()
bytes_sent = u"网卡发送流量: " + '{0:.2f} Mb'.format(net.bytes_recv / 1024 / 1024)
bytes_rcvd = u"网卡接收流量: " + '{0:.2f} Mb'.format(net.bytes_sent / 1024 / 1024)
print(bytes_sent)
print(bytes_rcvd)
print('-----------------------------磁盘信息---------------------------------------')
# 磁盘信息
io = psutil.disk_partitions()
for i in io:
o = psutil.disk_usage(i.device)
print("总容量:" + str(int(o.total / (1024.0 * 1024.0 * 1024.0))) + "G")
print("已用容量:" + str(int(o.used / (1024.0 * 1024.0 * 1024.0))) + "G")
print("可用容量:" + str(int(o.free / (1024.0 * 1024.0 * 1024.0))) + "G")
print('-----------------------------内存信息-------------------------------------')
# 内存信息
total = u"物理内存: " + str(round(psutil.virtual_memory().total / (1024.0 * 1024.0 * 1024.0), 2)) + 'G'
total_used = u"物理内存已使用: " + str(
round(psutil.virtual_memory().used / (1024.0 * 1024.0 * 1024.0), 2)) + 'G' + '\n'
total_free = u"剩余物理内存: " + str(round(psutil.virtual_memory().free / (1024.0 * 1024.0 * 1024.0), 2)) + 'G'
memory = u"物理内存使用率: " + str(psutil.virtual_memory().percent) + '%'
print(total)
print(total_used)
print(total_free)
print(memory)
#查看内存信息,剩余内存.free 总共.total
#round()函数方法为返回浮点数x的四舍五入值。
print('-----------------------------进程信息-------------------------------------')
# 查看系统全部进程
for pnum in psutil.pids():
p = psutil.Process(pnum)
print(u"进程名 %-20s 内存利用率 %-18s 进程状态 %-10s 创建时间 %-10s " \
% (p.name(), p.memory_percent(), p.status(), p.create_time()))
python psutila模块的更多相关文章
- python psutila模块(示例)
# qianxiao996精心制作 #博客地址:https://blog.csdn.net/qq_36374896 import psutil import time import datetime ...
- Python标准模块--threading
1 模块简介 threading模块在Python1.5.2中首次引入,是低级thread模块的一个增强版.threading模块让线程使用起来更加容易,允许程序同一时间运行多个操作. 不过请注意,P ...
- Python的模块引用和查找路径
模块间相互独立相互引用是任何一种编程语言的基础能力.对于“模块”这个词在各种编程语言中或许是不同的,但我们可以简单认为一个程序文件是一个模块,文件里包含了类或者方法的定义.对于编译型的语言,比如C#中 ...
- Python Logging模块的简单使用
前言 日志是非常重要的,最近有接触到这个,所以系统的看一下Python这个模块的用法.本文即为Logging模块的用法简介,主要参考文章为Python官方文档,链接见参考列表. 另外,Python的H ...
- Python标准模块--logging
1 logging模块简介 logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级.日志保存路径.日志文件回滚等:相比print,具备如下优点: 可以通过设置不同 ...
- python基础-模块
一.模块介绍 ...
- python 安装模块
python安装模块的方法很多,在此仅介绍一种,不需要安装其他附带的pip等,python安装完之后,配置环境变量,我由于中英文分号原因,环境变量始终没能配置成功汗. 1:下载模块的压缩文件解压到任意 ...
- python Queue模块
先看一个很简单的例子 #coding:utf8 import Queue #queue是队列的意思 q=Queue.Queue(maxsize=10) #创建一个queue对象 for i in ra ...
- python logging模块可能会令人困惑的地方
python logging模块主要是python提供的通用日志系统,使用的方法其实挺简单的,这块就不多介绍.下面主要会讲到在使用python logging模块的时候,涉及到多个python文件的调 ...
随机推荐
- redis(三)-----redis基本数据类型
Redis的全称是REmote Dictionary Server,它主要提供了5种数据结构:字符串.哈希.列表.集合.有序集合,同时在字符串的基础之上演变 出了位图(Bitmaps)和HyperLo ...
- Solution -「洛谷 P4320」道路相遇
\(\mathcal{Description}\) Link. 给定一个 \(n\) 个点 \(m\) 条边的连通无向图,并给出 \(q\) 个点对 \((u,v)\),询问 \(u\) 到 ...
- CPU优化之平均负载率之辅助工具
前面介绍了平均负载均衡的一些内容,那实际应用中如何查看,分析性能瓶颈呢?下面介绍相关的辅助工具. 一.stress stress是Linux 系统压力测试工具,其通过异常进程模拟平均负载升高的场景(前 ...
- 痞子衡嵌入式:揭秘i.MXRT1170上串行NOR Flash双程序可交替启动设计
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1170上串行NOR Flash双程序可交替启动设计. 在上一篇文章 <i.MXRT1060/1010上串行NOR F ...
- oracle11g在windows下安装
oracle下载 https://www.oracle.com/database/technologies/oracle-database-software-downloads.html 下载11g ...
- [Matlab]求解线性方程组
转自:http://silencethinking.blog.163.com/blog/static/911490562008928105813169/ AX=B或XA=B在MATLAB中,求解线性方 ...
- windev的字符集选择设置及元素命名方法建议
windev支持多语言,且支持整站翻译,同时支持最终用户的多语言选择,可以说多语言功能已经非常的全面和强大. windev原生支持英语.法语和葡萄牙语,在使用如中文等非拉丁字母语言时,需要在多个地方进 ...
- C#源代码的组成
引用 using ...表达式 i=5.i>5 语句:int i=5: 快( block ):{ }
- 《Java编程思想》学习笔记(详细)
目录 01 对象导论 02 一切都是对象 03 操作符 04 控制执行流程 05 初始化与清理 06 访问权限控制 07 复用类(继承) 08 多态 09 接口 10 内部类 11 持有对象 12 通 ...
- XStart远程连接Linux图形化界面
转至:https://zhuanlan.zhihu.com/p/337791712 场景: 因在Linux中安装Oracle11g 需要调用Oracle的图形化界面,此时在宿主机上安装了 Xmanag ...