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发送邮件接收邮件示例分享
Jan 21 Python
python对json的相关操作实例详解
Jan 04 Python
pyenv命令管理多个Python版本
Mar 26 Python
python3实现163邮箱SMTP发送邮件
May 22 Python
在Pycharm中调试Django项目程序的操作方法
Jul 17 Python
python2和python3实现在图片上加汉字的方法
Aug 22 Python
解决Python命令行下退格,删除,方向键乱码(亲测有效)
Jan 16 Python
PyCharm刷新项目(文件)目录的实现
Feb 14 Python
Python HTTP下载文件并显示下载进度条功能的实现
Apr 02 Python
python中如何进行连乘计算
May 28 Python
Python实现列表中非负数保留,负数转化为指定的数值方式
Jun 04 Python
python抢购软件/插件/脚本附完整源码
Mar 04 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
两种php调用Java对象的方法
2006/10/09 PHP
PHP类中的魔术方法(Magic Method)简明总结
2014/07/08 PHP
php metaphone()函数及php localeconv() 函数实例解析
2016/05/15 PHP
ThinkPHP 在阿里云上的nginx.config配置实例详解
2017/10/11 PHP
Mac系统下搭建Nginx+php-fpm实例讲解
2020/12/15 PHP
映彩衣的js随笔(js图片切换效果)
2011/07/31 Javascript
基于JavaScript 声明全局变量的三种方式详解
2013/05/07 Javascript
javascript数组操作方法小结和3个属性详细介绍
2014/07/05 Javascript
JavaScript中的pow()方法使用详解
2015/06/15 Javascript
基于jquery步骤进度条源码分享
2015/11/12 Javascript
67 个节约开发时间的前端开发者的工具、库和资源
2017/09/12 Javascript
JS实现碰撞检测的方法分析
2018/01/19 Javascript
Vue组件库发布到npm详解
2018/02/17 Javascript
webpack3里使用uglifyjs压缩js时打包报错的解决
2018/12/13 Javascript
vue2路由方式--嵌套路由实现方法分析
2020/03/06 Javascript
多种类型jQuery网页验证码插件代码实例
2021/01/09 jQuery
详解vite+ts快速搭建vue3项目以及介绍相关特性
2021/02/25 Vue.js
python 第三方库的安装及pip的使用详解
2017/05/11 Python
Python之列表的插入&替换修改方法
2018/06/28 Python
python绘制双Y轴折线图以及单Y轴双变量柱状图的实例
2019/07/08 Python
Python序列对象与String类型内置方法详解
2019/10/22 Python
查看已安装tensorflow版本的方法示例
2020/04/19 Python
python二维图制作的实例代码
2020/12/03 Python
python中@contextmanager实例用法
2021/02/07 Python
详解px单位html5响应式方案
2018/03/08 HTML / CSS
美国摩托车头盔、零件、齿轮及配件商店:Cycle Gear
2019/06/12 全球购物
白俄罗斯在线大型超市:e-dostavka.by
2019/07/25 全球购物
.NET remoting中对象激活的两种方式
2015/06/08 面试题
前台接待员岗位职责
2014/01/02 职场文书
食堂采购员岗位职责
2014/03/17 职场文书
企业文化演讲稿
2014/05/20 职场文书
2014年小学安全工作总结
2014/12/04 职场文书
利用Pycharm连接服务器的全过程记录
2021/07/01 Python
对象析构函数__del__在Python中何时使用
2022/03/22 Python
Ruby序列化和持久化存储 Marshal和Pstore介绍
2022/04/18 Ruby
Python如何将list中的string转换为int
2022/07/15 Ruby