使用pyinotify监控文件系统的变化

本文介绍如何使用Pyinotify库来监控Linux系统的文件及目录变化。Pyinotify依赖于Linux内核的inotify功能,适用于2.6.13及以上版本的Linux系统。文章详细解释了安装过程和基本用法,包括如何定义事件处理器来响应文件创建或删除等事件。

 

    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 pyinotify

wm = pyinotify.WatchManager()
mask = pyinotify.IN_DELETE | pyinotify.IN_CREATE

class 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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值