Linux下用Python脚本监控目录变化代码分享


Posted in Python onMay 21, 2015
#!/usr/bin/env python
#coding=utf-8

import os
from pyinotify import WatchManager, Notifier, ProcessEvent, IN_DELETE, IN_CREATE,IN_MODIFY
wm = WatchManager() 
mask = IN_DELETE | IN_CREATE |IN_MODIFY  # watched events

class PFilePath(ProcessEvent):
  def process_IN_CREATE(self, event):
    print  "Create file: %s " %  os.path.join(event.path, event.name)

  def process_IN_DELETE(self, event):
    print  "Delete file: %s " %  os.path.join(event.path, event.name)

  def process_IN_MODIFY(self, event):
      print  "Modify file: %s " %  os.path.join(event.path, event.name)

if __name__ == "__main__":

  notifier = Notifier(wm, PFilePath())
  wdd = wm.add_watch('.', mask, rec=True)

  while True:
    try :
      notifier.process_events()
      if notifier.check_events():
        notifier.read_events()
    except KeyboardInterrupt:
      notifier.stop()
      break
Python 相关文章推荐
python使用cookie库操保存cookie详解
Mar 03 Python
在Python中使用swapCase()方法转换大小写的教程
May 20 Python
Python中getattr函数和hasattr函数作用详解
Jun 14 Python
基于Python的接口测试框架实例
Nov 04 Python
python 剪切移动文件的实现代码
Aug 02 Python
python 3.6.4 安装配置方法图文教程
Sep 18 Python
Python上下文管理器全实例详解
Nov 12 Python
如何利用pygame实现简单的五子棋游戏
Dec 29 Python
Python面向对象封装操作案例详解
Dec 31 Python
python GUI库图形界面开发之PyQt5打开保存对话框QFileDialog详细使用方法与实例
Feb 27 Python
Python利用for循环打印星号三角形的案例
Apr 12 Python
flask项目集成swagger的方法
Dec 09 Python
Python批量按比例缩小图片脚本分享
May 21 #Python
初步讲解Python中的元组概念
May 21 #Python
Linux下使用python自动修改本机网关代码分享
May 21 #Python
Python字符串逐字符或逐词反转方法
May 21 #Python
Python合并字符串的3种方法
May 21 #Python
在Python中使用sort()方法进行排序的简单教程
May 21 #Python
Python去除字符串两端空格的方法
May 21 #Python
You might like
基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解
2013/05/07 PHP
10个实用的PHP正则表达式汇总
2014/10/23 PHP
简单的自定义php模板引擎
2016/08/26 PHP
Yii框架弹出窗口组件CJuiDialog用法分析
2017/01/07 PHP
phpMyAdmin无法登陆的解决方法
2017/04/27 PHP
PHP生成随机码的思路与方法实例探索
2019/04/11 PHP
如何实现浏览器上的右键菜单
2006/07/10 Javascript
Ext javascript建立超链接,进行事件处理的实现方法
2009/03/22 Javascript
dojo随手记 gird组件引用
2011/02/24 Javascript
为JS扩展Array.prototype.indexOf引发的问题探讨及解决
2013/04/24 Javascript
jquery插件ajaxupload实现文件上传操作
2015/12/09 Javascript
jQuery实现监控页面所有ajax请求的方法
2015/12/10 Javascript
easyui validatebox验证
2016/04/29 Javascript
使用bootstrap实现多窗口和拖动效果
2016/09/22 Javascript
详解vue 配合vue-resource调用接口获取数据
2017/06/22 Javascript
详解webpack进阶之loader篇
2017/08/23 Javascript
vue-resource拦截器设置头信息的实例
2017/10/27 Javascript
vue在使用ECharts时的异步更新和数据加载详解
2017/11/22 Javascript
详解vue中点击空白处隐藏div的实现(用指令实现)
2018/04/19 Javascript
angular实现input输入监听的示例
2018/08/31 Javascript
vue click.stop阻止点击事件继续传播的方法
2018/09/04 Javascript
详解vue-cli 2.0配置文件(小结)
2019/01/14 Javascript
使用 vue 实例更好的监听事件及vue实例的方法
2019/04/22 Javascript
JavaScript构造函数原理及实现流程解析
2020/11/19 Javascript
js实现类选择器和name属性选择器的示例步骤
2021/02/07 Javascript
分享一个可以生成各种进制格式IP的小工具实例代码
2017/07/28 Python
numpy 进行数组拼接,分别在行和列上合并的实例
2018/05/08 Python
Python中将两个或多个list合成一个list的方法小结
2019/05/12 Python
Python闭包装饰器使用方法汇总
2020/06/29 Python
css3实现画半圆弧线的示例代码
2017/11/06 HTML / CSS
Origins加拿大官网:雅诗兰黛集团高端植物护肤品牌
2017/11/19 全球购物
2014年销售工作总结范文
2014/12/01 职场文书
2014小学教师年度考核工作总结
2014/12/03 职场文书
爱心助学感谢信
2015/01/21 职场文书
网吧管理制度范本
2015/08/05 职场文书
学生会宣传部竞选稿
2015/11/21 职场文书