python常用运维脚本实例-你必须知道的python运维常用脚本!(日常更新)

原文链接:https://bbs.huaweicloud.com/blogs/16f870b109a911e9bd5a7ca23e93a891

github地址:https://github.com/opsonly, 上面是一个基于python3.7和django2.1的多人博客系统,喜欢的可以给个star~

判断是否是一个目录

#!/usr/bin/env python3# -*- coding: utf-8 -*-# @Time : 2018-12-18 15:16# @Author : opsonly# @Site : # @File : opsUse.py# @Software: PyCharmimport os dir = "/var/www/html/EnjoyCarApi/"if os.path.isdir(dir): print('%s is a dir' % dir)else: print('%s is not a dir' % dir)

系统内存与磁盘检测

#!/usr/bin/env python3# -*- coding: utf-8 -*-# @Time : 2018-12-17 17:16# @Author : opsonly# @Site : # @File : systemissue.py# @Software: PyCharmimport psutildef memissue(): print('内存信息:') mem = psutil.virtual_memory() # 单位换算为MB memtotal = mem.total/1024/1024 memused = mem.used/1024/1024 membaifen = str(mem.used/mem.total*100) + '%' print('%.2fMB' % memused) print('%.2fMB' % memtotal) print(membaifen)def cuplist(): print('磁盘信息:') disk = psutil.disk_partitions() diskuse = psutil.disk_usage('/') #单位换算为GB diskused = diskuse.used / 1024 / 1024 / 1024 disktotal = diskuse.total / 1024 / 1024 / 1024 diskbaifen = diskused / disktotal * 100 print('%.2fGB' % diskused) print('%.2fGB' % disktotal) print('%.2f' % diskbaifen) memissue() print('*******************') cuplist()

统计nginx日志前十ip访问量并以柱状图显示

#!/usr/bin/env python3# -*- coding: utf-8 -*-# @Time : 2018-12-18 15:49# @Author : opsonly# @Site : # @File : nginx_ip.py# @Software: PyCharmimport matplotlib.pyplot as plt#nginx_file = 'nginx2018-12-18_07:45:26'ip = {}# 筛选nginx日志文件中的ipwith open(nginx_file) as f: for i in f.readlines(): s = i.strip().split()[0] lengh = len(ip.keys()) # 统计每个ip的访问量以字典存储 if s in ip.keys(): ip[s] = ip[s] + 1 else: ip[s] = 1#以ip出现的次数排序返回对象为listip = sorted(ip.items(), key=lambda e:e[1], reverse=True)#取列表前十newip = ip[0:10:1] tu = dict(newip) x = [] y = []for k in tu: x.append(k) y.append(tu[k]) plt.title('ip access') plt.xlabel('ip address') plt.ylabel('PV')#x轴项的翻转角度plt.xticks(rotation=70)#显示每个柱状图的值for a,b in zip(x,y): plt.text(a, b, '%.0f' % b, ha='center', va= 'bottom',fontsize=7) plt.bar(x,y) plt.legend() plt.show()

1240

查看网段里有多少ip地址

#!/usr/bin/env python3#

-*- coding: utf-8 -*-# @Time : 2018-12-18 15:31# @Author : opsonly# @Site : # @File : ipTest.py# @Software: PyCharmimport IPy ip = IPy.IP('172.16.0.0/26') print(ip.len())for i in ip: print(i)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值