pyinotify依赖Linux内核inotify功能,它需要在2.6.13版本的内核的Linux系统上运行。

1. 安装pyinotify

pip install pyinotify

安装完后可以直接在命令行上运行

python -m pyinotify /tmp

2. 使用Notifier

Notifiter是pyinotify模块最重要的类,用来读取通知和处理事件,其中WatchManage对象是必传的参数,

WatchManager保存了需要监视的文件和目录,以及监视哪些事件。

3. 事件处理器

定制事件处理方式的方法是继承ProcessEvent类,并实现process_EVNET_NAME方法

import pyinotifywm = pyinotify.WatchManager()
mask = pyinotify.IN_DELETE | pyinotify.IN_CREATEclass EventHandler(pyinotify.ProcessEvent):def process_IN_CREATE(self, event):print("Creating:", event.pathname)def process_IN_DELETE(self, event):print("Removing:", event.pathname)handler = EventHandler()
notifier = pyinotify.Notifier(wm, handler)
wdd = wm.add_watch('/tmp', mask, rec=True)notifier.loop()

 

利用pyinotify可以做很多有趣的事情:参考一个有趣的命令行工具:https://github.com/copton/react 

转载于:https://www.cnblogs.com/zydev/p/8734752.html

使用pyinotify监控文件系统的变化相关推荐

  1. python监控网页内容变化_使用Python监控文件内容变化代码实例

    利用seek监控文件内容,并打印出变化内容: #/usr/bin/env python #-*- coding=utf-8 -*- pos = 0 while True: con = open(&qu ...

  2. linux下通过inotify-tools监控文件系统

    inotify-tools 是为linux下inotify文件监控工具提供的一套c的开发接口库函数, 同时还提供了一系列的命令行工具,这些工具可以用来监控文件系统的事件. inotify-tools是 ...

  3. Linux下监控文件系统

    Linux下监控文件系统 Linux的后台程序通常在机器没有问题的情况下,需要长期运行(比如说数个月,甚至是数年).但是,程序的配置文件有时候是需要定期作调整.为了不影响程序对外服务(不重启),动态加 ...

  4. Python Watchdog——监控文件系统事件

    文章目录 简介 安装 初试 重定向到日志中 Handler类型 命令行工具 动态日志监控 遇到的坑 参考文献 简介 Watchdog是一款用于监控文件系统事件的Python库,对不同平台的事件进行了封 ...

  5. linux inotify 监控文件系统事件

    1. Inotify 机制概述 1.1. Inotify 介绍 在日常的运维过程中,经常需要备份某些文件,或者对系统的某些文件进行监控,比如重要的配置文件等.如果需要作到实时同步或者监控,就需要使用内 ...

  6. java监听mysql_java实时监控mysql数据库变化

    对于二次开发来说,很大一部分就找找文件和找数据库的变化情况 对于数据库变化.还没有发现比较好用的监控数据库变化监控软件. 今天,我就给大家介绍一个如何使用mysql自带的功能监控数据库变化 1.打开数 ...

  7. Linux定期监视某文件变化,监控Linux文件变化,防止服务器被黑

    运维服务器比较头疼的一个问题是系统被黑,沦为肉鸡或者矿机.除了加强安全基线配置,加强网络和端口加固,系统和应用bug修复,上IDS/IPS(入侵检测/防御系统)之外,另一个方面就是系统监控,一个完善准 ...

  8. 【视频】vue $watch监控数据的变化

    P14vue $watch监控数据的变化 https://www.bilibili.com/video/av91679349?p=14

  9. java 远程监控文件系统_Java 文件系统监控(WatchService)

    文件系统监控这种场景应用非常广,比如spring boot里面的devtool,它就是监控文件系统,当文件一改变(增.删.改),它就会重新加载. 直接上代码 import java.io.IOExce ...

最新文章

  1. 日志排查问题困难?分布式日志链路跟踪来帮你
  2. 苹果/三星/华为纷纷布局人工智能 将AI作为公司发展新动力
  3. windows清理_Windows系统高级清理工具,实力吊打360!
  4. 获取当前应用程序的文件名
  5. java设置text默认内容_Eclipse自定义内容辅助基于默认Java内容辅助结果
  6. oracle独立事务,Oracle中独立事务的处理
  7. wincc工程组态论文_基于WinCC软件的组态设计与实现
  8. 阅读文献整理20220104
  9. redis主从架构宕机问题解决方法
  10. 80%的销售来源于第4至11次的跟踪!
  11. 数字图像处理-空间滤波
  12. github | 马赛克去除项目
  13. 名悦集团:车上不能缺的行车小物件,安全第一条
  14. PHP之Smarty
  15. scnaf使用格式化字符串%d接受小数的情况
  16. win11邮箱客户端配置邮箱
  17. 测开学习篇-html
  18. criterial查询
  19. Web开发之-CS架构与BS架构
  20. 残差(residual)

热门文章

  1. rmf文件 linux,Linux下使用静态库的问题
  2. Fiddler抓包移动端https请求
  3. 在Android中实现OPUS编码
  4. pjsip海思平台编译
  5. 流程图、类图推荐的软件
  6. 无公网IP,如何进行私有化部署?
  7. 机器人抓取 机器人物体三维定位 三维匹配
  8. linux中wc命令怎么退出,linux中的wc命令
  9. Principle for Mac 6.12 中文版 优秀的交互原型设计工具
  10. 武汉计算机学校排名及分数线,湖北省专科学校排名及分数线2019