学习python自动化运维的第一天

学习python自动化运维的第一天

今天学习了python的psutil模块,以及IPy模块
以上的代码部分为主要的学习内容,自己给自己做个记录。如果又朋友需要使用,可以解锁相关的代码块即可,不同的代码块用空行隔开。

"""python自动化运维,学习的第一天"""

"""系统性能信息模块psutil"""
# # 测试
# import psutil   # 大小单位一般采用字节
# mem = psutil.virtual_memory()
# print(mem.total,mem.used)


"""获取系统性能信息"""
# # CPU信息
# import psutil
# print("cpu信息",psutil.cpu_times())   # 获取cpu完整信息
# # 输出结果:scputimes(user=17722.796875, 
# #   system=19252.84375, idle=746279.328125, 
# #   interrupt=507.9375, dpc=574.78125)
# # 分别表示执行用户进程的时间,执行内核进程和中断的时间,
# # cpu处于idle状态的时间

# # 也可以单独输出
# print("cpu单个信息:",psutil.cpu_times().user)
# # 输出结果:17791.703125

# print("cpu的逻辑个数:",psutil.cpu_count()) # 获取cpu的逻辑个数
# print("cpu的物理个数",psutil.cpu_count(logical=False)) # 获取cpu的物理个数

# # 获取内存信息
# import psutil
# mem = psutil.virtual_memory()
# print("获取完整信息",mem) # 获取完整的内存信息
# print("获取内存总数信息",mem.total)   # 获取单个信息
# print("获取空闲内存信息",mem.free)    
# print("获取swap分区信息",psutil.swap_memory())   # 获取swap分区信息

# # 获取磁盘信息
# import psutil
# print("获取磁盘完整信息",psutil.disk_partitions())   # 获取磁盘完整信息
# print("获取指定分区信息",psutil.disk_usage("C:/"))  # 获取指定分区的使用情况
# print("获取硬盘总的IO个数",psutil.disk_io_counters()) # 获取硬盘总的IO个数、读取信息
# print("获取单个分区的IO个数",psutil.disk_io_counters(perdisk=True))  

# # 获取网络信息
# import psutil
# print("获取网络总的IO信息",psutil.net_io_counters()) # 获取网络总的IO信息
# print("获取单个(每个)网络的IO信息",psutil.net_io_counters(pernic=False)) # 获取每个网络接口的IO信息

# # 获取系统其他信息
# import psutil,datetime
# print("获取用户登录信息",psutil.users()) # 获取当前登录的用户信息
# print("获取开机时间",psutil.boot_time()) # 获取开机时间 格式是时间戳
# print(datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d %H:%M:%S"))   # 将开机时间格式化输出



"""系统进程管理方法"""
# # 进程信息
# import psutil
# print(psutil.pids()) # 列出所有进程pid,输出格式为列表形式
# p = psutil.Process(17804)   # 实例化一个Process对象,参数为一个进程的pid
# print("进程名字",p.name())  # 输出指定进程的名字
# print("进程的bin路径",p.exe())   # 输出进程的bin路径
# print("进程的工作路径",p.cwd())   # 输出进程的工作路径(绝对路径)
# print("进程工作状态",p.status())   # 获取进程工作状态,sleeping,running
# print("进程创建时间",p.create_time())  # 获取进程创建时间 时间戳格式
# print("进程的cpu时间",p.cpu_times()) # 获取进程的cpu时间
# print("进程的cpu亲和度",p.cpu_affinity())  # 请求进程的cpu的亲和度
# print("进程的内存使用率",p.memory_percent())   # 进程内存利用率
# print("进程的内存信息",p.memory_info())   # 进程内存rss,vms信息
# print("进程的IO信息",p.io_counters())  # 进程的IO信息,包括读写IO数及字节数
# print("进程的socket列表",p.connections())  # 返回进程的socket的manedutples列表
# print("进程开启的线程数",p.num_threads())  # 进程开启的线程数

# # popen类的使用,该方法以便跟踪进程的运行状态
# import psutil
# from subprocess import PIPE
# p = psutil.Popen(["D:\\AppData\\anaconda\\python.exe","-c","print('hello')"],stdout=PIPE)
# print(p.name())
# print(p.username())
# # 具体的操作方法看进程信息

"""IP地址处理模块"""
# # 测试
# from IPy import IP
# print(IP('0.0.0.0/16').version()) # 输出IP地址的类型,4表示IPV4,6表示IPV6
# print(IP('::1').version())

"""ip地址,网段的基本处理"""

# from IPy import IP
# ip = IP('192.168.1.252/30')
# print(ip.len()) # 输出网段的IP个数
# for i in ip:
#     print(i)   # 打印该网段的所有IP清单

# # IP类的常用方法介绍
# from IPy import IP
# ip =IP("192.168.1.20")
# print(ip.reverseName())  # 反向解析地址格式 输出格式:20.1.168.192.in-addr.arpa.
# print(ip.iptype())    # 判断ip地址为公网(PUBLIC),还是私网(PRIVATE)
# print(ip.int())   # 转换为整型格式
# print(ip.strHex())  # 转换为十六进制
# print(ip.strBin()) # 转换为二进制
# print(IP(0xc0a80114))   # 将十六进制转化为IP格式
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值