python

# .psutil是一个跨平台库能够轻松实现获取系统运行的进程和系统利用率(包括CPU、内存、磁盘、网络等)信息。
# 它主要用来做系统监控,性能分析,进程管理。
# 它实现了同等命令行工具提供的功能,如ps、top、lsof、netstat、ifconfig、who、df、kill、free、nice、ionice、
# iostat、iotop、uptime、pidof、tty、taskset、pmap等。
# 目前支持32位和64位的Linux、Windows、OS X、FreeBSD和Sun Solaris等操作系统.


import psutil

# CPU
# print(psutil.cpu_times())
# 获取cpu逻辑和物理个数,默认logical值为True 。
#CPU逻辑个数
# print(psutil.cpu_count())
#CPU物理个数
# print(psutil.cpu_count(logical=False))

# 获取cpu的使用率:
# print(psutil.cpu_percent())
# print(psutil.cpu_percent(1))


# 内存信息
# print(psutil.virtual_memory())
# print(list(psutil.virtual_memory()))
# print(psutil.virtual_memory().total)
# print(psutil.virtual_memory().available)
# print(psutil.virtual_memory().percent)
# print(psutil.virtual_memory().used)
# print(psutil.virtual_memory().free)


# 磁盘信息
# 磁盘信息主要有两部分,一个是磁盘的利用率,一个是io,他们分别可以通过disk_usage和disk_io_counters方法获取。
# print(psutil.disk_partitions())
# print(psutil.disk_usage('C:\'))

# 默认disk_io_counters方法获取的是硬盘总的io数和读写信息,如果需要获取单个分区的io和读写信息加上"perdisk=True"参数。
# print(psutil.disk_io_counters())
# print(psutil.disk_io_counters(perdisk=True))

# 网络信息:
# 网络io和磁盘io使用方法差不多,主要使用net_io_counters方法,如果需要获取单个网卡的io信息,加上pernic=True参数。
# 获取网络总的io情况
# print(psutil.net_io_counters())

# 获取网卡的io情况
# print(psutil.net_io_counters(pernic=True))

# for i,j in psutil.net_io_counters(pernic=True).items():
#     if i == '本地连接':
#         print(j)

# 其他系统信息:
# 获取开机时间
# print(psutil.boot_time())

# import datetime
# print(datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d %H: %M: %S"))

# 查看系统全部进程号
# print(psutil.pids())

# p = psutil.Process(6680)
# p.name()    #进程名
# p.exe()         #进程的bin路径
# p.cwd()        #进程的工作目录绝对路径
# p.status()     #进程状态
# p.create_time()  #进程创建时间
# # p.uids()      #进程uid信息
# # p.gids()      #进程的gid信息
# p.cpu_times()    #进程的cpu时间信息,包括user,system两个cpu信息
# p.cpu_affinity()  #get进程cpu亲和度,如果要设置cpu亲和度,将cpu号作为参考就好
# p.memory_percent()  #进程内存利用率
# p.memory_info()    #进程内存rss,vms信息
# p.io_counters()    #进程的IO信息,包括读写IO数字及参数
# # p.connectios()    #返回进程列表
# p.num_threads()  #进程开启的线程数

# 听过psutil的Popen方法启动应用程序,可以跟踪程序的相关信息
# from subprocess import PIPE
# p = psutil.Popen(["/usr/bin/python", "-c", "print('hello')"],stdout=PIPE)
# p.name()
# p.username()


# 系统用户
# users_count = len(psutil.users())

 https://psutil.readthedocs.io/en/latest/#windows-services

原文地址:https://www.cnblogs.com/Anec/p/10231078.html