>>> import psutil
>>> login_user_num=len(psutil.users())
# 获取当前系统的登录用户数
>>> print(login_user_num)
4
获取cpu数据的函数
import psutil
# 获取cpu数据的函数
def get_cpu():
# cpu数量
cpu_count = len(psutil.Process().cpu_affinity())
# 每颗cpu的物理核心数
cpu_py_count = psutil.cpu_count(logical=False)
# cpu信息
cpu_info = psutil.cpu_times_percent(interval=0.1) #每0.1s刷新一次
return cpu_count,cpu_py_count,cpu_info
cpu = get_cpu()
print(cpu)
打印CPU数据函数
import psutil
# 获取cpu数据的函数
def get_cpu():
# cpu数量
cpu_count = len(psutil.Process().cpu_affinity())
# 每颗cpu的物理核心数
cpu_py_count = psutil.cpu_count(logical=False)
# cpu信息
cpu_info = psutil.cpu_times_percent(interval=0.1)
return cpu_count,cpu_py_count,cpu_info
# cpu = get_cpu()
# print(cpu)
# 打印cpu信息
def dispaly_cpu():
cpu_template = """
===========================CPU信息==============================
CPU颗数:{cpu_count}
CPU总使用率:{cpu_time}
CPU物理核心数:{cpu_py_count}
IO等待CPU空闲率: {io_wait_time}
"""
cpu_count, cpu_py_count,cpu_info=get_cpu()
import sys
plf = sys.platform
print(cpu_template.format(
cpu_count=cpu_count,
cpu_py_count=cpu_py_count,
cpu_time=cpu_info.user + cpu_info.system,
io_wait_time=cpu_info.iowait
))
dispaly_cpu()
打印内存数据函数
关于物理内存和交换内存之间的关系。
物理内存:就是实际的内存条提供的临时数据存储空间,在 Windows 上右键点击计算机,再点击属性时,上面显示的安装内存(RAM)就是电脑的物理内存。这些内存是实际存在的,在你不给机器增加内存条的时候是不会改变的。
交换内存:交换内存是专门用来临时存储数据的,通常在页面调度和交换进程数据时使用。相当于在进行内存整理的时候,会先把部分数据放在硬盘的某个地方,类似我们整理衣柜,衣服一多直接整理会很麻烦,因此会先把部分衣服放在其他地方,等衣柜里的衣服整理完了再把放在其它地方的衣服拿回来。这个其他地方放在计算机中则代表硬盘的某个地方,也就是我们所说的交换区。通常当使用交换内存时,是因为物理内存不足,正所谓衣柜,如果足够大的话就没必要拿出部分衣服放在其它地方, 直接在衣柜里就能解决了。
虚拟内存:首先,如果想要操作文件,可执行程序等等,那么首先要把它们从磁盘上读取到内存中,因此 CPU 除了自己的那一部分小小的空间外,要想操作数据,只能操作内存里的数据。但是当内存不够了,那么便会在硬盘上开辟一份虚拟内存,将物理内存里的部分数据放在虚拟内存当中。硬盘的空间很大,即使普通电脑安装的固态硬盘也有一百个 G,因此可以拿出一部分充当虚拟内存。不过虚拟内存虽说是内存,但毕竟在硬盘上,速度绝对和 CPU 直接从物理内存里读取数据的速度相差甚远。这也是为什么那些大型网站将经常被访问的一些数据放在 Redis 缓存里,而不是放在硬盘或者数据库上。
import psutil
# 查看内存使用情况
print(psutil.virtual_memory())
"""
注释:
total: 总内存
available: 可用内存
percent: 内存使用率
used: 已使用的内存
"""
import psutil
# 查看虚拟内存使用情况
print(psutil.swap_memory())
import psutil
# print(psutil.virtual_memory())
# print(psutil.swap_memory())
"""
注释:
total: 总内存
available: 可用内存
percent: 内存使用率
used: 已使用的内存
"""
def get_memory():
mem_total = psutil.virtual_memory().total
mem_available = psutil.virtual_memory().available
mem_percent = psutil.virtual_memory().percent
mem_used = psutil.virtual_memory().used
mem_free = psutil.virtual_memory().free
return mem_total,mem_available,mem_percent,mem_used,mem_free
# aaa = get_memory()
# print(aaa)
def out_memory():
mem_template="""
******内存信息******
总内存: {mem_total}
可用内存:{mem_available}
内存已使用百分比:{mem_percent}
已用内存: {mem_used}
空闲内存:{mem_free}
"""
import sys
mem_total,mem_available,mem_percent,mem_used,mem_free = get_memory()
print(mem_template.format(mem_total=mem_total,
mem_available=mem_available,
mem_percent=mem_percent,
mem_used=mem_used,
mem_free=mem_free))
out_memory()
一键配置Linux主机Yum源
import sys
import platform
import subprocess
while True:
print('''
***********工具**********
*********请选择序号*******
1.自动配置Yum源
2.按q键退出
''')
# print(platform.platform()) #获取系统版本
version = platform.platform()
num = int(input("请输入选项:"))
if num == 1:
if "el7" in version:
subprocess.getoutput('curl -o /etc/yum.repos.d/CentOS7-Base-aliyun.repo https://mirrors.aliyun.com/repo/Centos-7.repo'))
break
if "el7" in version:
subprocess.getoutput('curl -o /etc/yum.repos.d/CentOS7-Base-aliyun.repo https://mirrors.aliyun.com/repo/Centos-vault-6.10.repo')
break
elif num == 5:
break