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中测试访问同一数据的竞争条件的方法
Apr 23 Python
Python实现的简单算术游戏实例
May 26 Python
python遍历文件夹下所有excel文件
Jan 03 Python
python微信跳一跳系列之色块轮廓定位棋盘
Feb 26 Python
python实现名片管理系统项目
Apr 26 Python
Python scipy的二维图像卷积运算与图像模糊处理操作示例
Sep 06 Python
浅谈python中频繁的print到底能浪费多长时间
Feb 21 Python
python实现简单井字棋小游戏
Mar 05 Python
解决Jupyter无法导入已安装的 module问题
Apr 17 Python
Django model.py表单设置默认值允许为空的操作
May 19 Python
Python Django路径配置实现过程解析
Nov 05 Python
OpenCV绘制圆端矩形的示例代码
Aug 30 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
AMFPHP php远程调用(RPC, Remote Procedure Call)工具 快速入门教程
2010/05/10 PHP
PHP 自定义错误处理函数trigger_error()
2013/03/26 PHP
PHP设计模式之装饰者模式代码实例
2015/05/11 PHP
php+ajax实现商品对比功能示例
2019/04/13 PHP
laravel-admin 实现给grid的列添加行数序号的方法
2019/10/08 PHP
JS实现一个按钮的方法
2015/02/05 Javascript
JavaScript判断用户是否对表单进行了修改的方法
2015/03/18 Javascript
jQuery实现限制textarea文本框输入字符数量的方法
2015/05/28 Javascript
js实现input密码框提示信息的方法(附html5实现方法)
2016/01/14 Javascript
JS中Eval解析JSON字符串的一个小问题
2016/02/21 Javascript
jQuery实现弹出窗口弹出div层的实例代码
2017/01/09 Javascript
如何使用vuejs实现更好的Form validation?
2017/04/07 Javascript
微信小程序canvas写字板效果及实例
2017/06/15 Javascript
vue.js通过路由实现经典的三栏布局实例代码
2018/07/08 Javascript
对Vue.js之事件的绑定(v-on: 或者 @ )详解
2018/09/15 Javascript
Vue.js样式动态绑定实现小结
2019/01/24 Javascript
详解vue中的父子传值双向绑定及数据更新问题
2019/06/13 Javascript
8 个有用的JS技巧(推荐)
2019/07/03 Javascript
Vuex实现购物车小功能
2020/08/17 Javascript
Nuxt pages下不同的页面对应layout下的页面布局操作
2020/11/05 Javascript
[03:26]《DAC最前线》之EG经理自述DOTA2经历
2015/02/02 DOTA
python网络编程学习笔记(10):webpy框架
2014/06/09 Python
浅谈python可视化包Bokeh
2018/02/07 Python
numpy matrix和array的乘和加实例
2018/06/28 Python
Python 50行爬虫抓取并处理图灵书目过程详解
2019/09/20 Python
详解python内置模块urllib
2020/09/09 Python
护理专业应届毕业生推荐信
2013/11/15 职场文书
自我评价200字分享
2013/12/17 职场文书
幼儿园教师工作制度
2014/01/22 职场文书
农业项目建议书
2014/08/25 职场文书
放飞梦想演讲稿200字
2014/08/26 职场文书
住房抵押登记委托书
2014/09/27 职场文书
2015年感恩节活动总结
2015/03/24 职场文书
只需要100行Python代码就可以实现的贪吃蛇小游戏
2021/05/27 Python
Python内置包对JSON文件数据进行编码和解码
2022/04/12 Python
彻底卸载VMware虚拟机的超详细步骤记录
2022/07/15 Servers