返回顶部

收藏

Linux环境下监控目录变化的Python代码片段

更多

这段代码可以监控当前目录及子目录文件的创建,修改,删除等变化,需要用到pyinotify模块,pyinotify模块可以到:http://pyinotify.sourceforge.net/下载

#!/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

收藏

0人收藏

支持

0

反对

0

发表评论