Linux 发邮件磁盘空间监控(python)


Posted in Python onApril 23, 2016

核心代码:

#!/usr/bin/python
# -*- coding: UTF-8 -*-


import smtplib
import os
import commands,time 
from email.mime.text import MIMEText
#from email import MIMEText
disk_free=os.popen('df -lh')
list_disk=disk_free.read()
mailto_list=["2880329185@qq.com","2881280685@qq.com","2880089704@qq.com","2880329180@qq.com"]
mail_host="smtp.139.com" 
mail_user="user"  
mail_pass="password"  
mail_postfix="jljgl@.com" 
use01=commands.getstatusoutput("df -lh|awk '{print $4}'|grep '%'|awk -F '%' '{print $1}'|grep -v Use")
use02=commands.getstatusoutput("df -lh|awk '{print $5}'|grep '%'|awk -F '%' '{print $1}'|grep -v Use")
getrecord=commands.getstatusoutput("cat /home/oracle/script/mail.log|awk '{print $1}'")
gettime=commands.getstatusoutput("cat /home/oracle/script/mail.log|awk '{print $2}'")


free01=use01[1]
free02=use02[1]+'\n'+use01[1]
new_time=time.strftime("%Y%m%d", time.localtime())


def send_mail(to_list,sub,content):
  me=mail_postfix
  msg = MIMEText(content,_subtype='plain',_charset='gb2312')
  msg['Subject'] = sub
  msg['From'] = me
  msg['To'] = ";".join(to_list)
  try:
    server = smtplib.SMTP()
    server.connect(mail_host)
    server.login(mail_user,mail_pass)
    server.sendmail(me, to_list, msg.as_string())
    server.close()
    return True
  except SyntaxError:
    pass
    return False
if __name__ == '__main__':
    if free02>30:
        id=0
        if new_time>gettime[1]:
            while 1:
                getrecord=commands.getstatusoutput("cat /home/oracle/script/mail.log|awk '{print $1}'")
                id=id+1
                '''
                jl=open('/home/oracle/script/dd.log')
                record=jl.read()
                '''
                line_l=str(id)+' '+new_time




                df=open('/home/oracle/script/mail.log','w')
                df.writelines(line_l)
                df.close()
                
                if send_mail(mailto_list,"hello",list_disk):
                    print "发送成功"
                else:
                    print "发送失败"
                if getrecord[1]>0:
                    break
        else:
            line_m=str(0)+' '+new_time
            free=open('/home/oracle/script/mail.log','w')
            free.writelines(line_m)
            free.close()
Python 相关文章推荐
pygame学习笔记(1):矩形、圆型画图实例
Apr 15 Python
用C++封装MySQL的API的教程
May 06 Python
Python中Django框架利用url来控制登录的方法
Jul 25 Python
python实现网站的模拟登录
Jan 04 Python
Python3 模块、包调用&路径详解
Oct 25 Python
python利用sklearn包编写决策树源代码
Dec 21 Python
删除python pandas.DataFrame 的多重index实例
Jun 08 Python
numpy向空的二维数组中添加元素的方法
Nov 01 Python
Python3实现爬取简书首页文章标题和文章链接的方法【测试可用】
Dec 11 Python
Django用户认证系统 User对象解析
Aug 02 Python
Python实现非正太分布的异常值检测方式
Dec 09 Python
哈工大自然语言处理工具箱之ltp在windows10下的安装使用教程
May 07 Python
web.py 十分钟创建简易博客实现代码
Apr 22 #Python
在windows下快速搭建web.py开发框架方法
Apr 22 #Python
基于python实现的抓取腾讯视频所有电影的爬虫
Apr 22 #Python
Python开发之快速搭建自动回复微信公众号功能
Apr 22 #Python
Django小白教程之Django用户注册与登录
Apr 22 #Python
python中PIL安装简单教程
Apr 21 #Python
Python for Informatics 第11章之正则表达式(四)
Apr 21 #Python
You might like
搜索引擎技术核心揭密
2006/10/09 PHP
php 引用(&)详解
2009/11/20 PHP
PHP Ajax实现无刷新附件上传
2016/08/17 PHP
django中的ajax组件教程详解
2018/10/18 PHP
javascript 类方法定义还是有点区别
2009/04/15 Javascript
asp.net+jquery滚动滚动条加载数据的下拉控件
2010/06/25 Javascript
原生js实现改变随意改变div属性style的名称和值的结果
2013/09/26 Javascript
Jquery网页内滑动缓冲导航的实现代码
2015/04/05 Javascript
动态JavaScript所造成一些你不知道的危害
2016/09/25 Javascript
Bootstrap导航条学习使用(二)
2017/02/08 Javascript
深入理解Node.js中的进程管理
2017/03/13 Javascript
JavaScript实现分页效果
2017/03/28 Javascript
JS实现验证码倒计时的注册页面
2018/01/02 Javascript
vue中v-model的应用及使用详解
2018/06/27 Javascript
微信内置浏览器图片查看器的代码实例
2019/10/08 Javascript
原生javascript实现类似vue的数据绑定功能示例【观察者模式】
2020/02/24 Javascript
JavaScript编码小技巧分享
2020/09/17 Javascript
Vue 数据响应式相关总结
2021/01/28 Vue.js
Python中的yield浅析
2014/06/16 Python
Pandas读取并修改excel的示例代码
2019/02/17 Python
深度辨析Python的eval()与exec()的方法
2019/03/26 Python
Python Django的安装配置教程图文详解
2019/07/17 Python
如何利用pygame实现简单的五子棋游戏
2019/12/29 Python
利用Python将图片中扭曲矩形的复原
2020/09/07 Python
解决HTML5中滚动到底部的事件问题
2019/08/22 HTML / CSS
Python面试题集
2012/03/08 面试题
物流专业毕业生推荐信范文
2013/11/18 职场文书
公司门卫岗位职责
2014/03/15 职场文书
三年级评语大全
2014/04/23 职场文书
五水共治捐款倡议书
2014/05/14 职场文书
服务理念口号
2014/06/11 职场文书
旅游专业毕业生自荐书
2014/06/30 职场文书
主要领导对照检查材料
2014/08/26 职场文书
解除劳动合同通知书范本
2015/04/16 职场文书
python机器学习创建基于规则聊天机器人过程示例详解
2021/11/02 Python
threejs太阳光与阴影效果实例代码
2022/04/05 Javascript