首页 > 解决方案 > Python:iNotify_Simple 从其他目录获取文件

问题描述

我正在使用 inotify_simple 从目录目录中获取通知。我正在访问一个具有多个子目录的目录,遍历这些子目录并希望在每个目录中使用 inotify。我对这个程序的目标是在其中一个子目录中发生任何事情(特别是创建文件)时得到通知。

我的文件结构:

-mainDir
  -subDir1
    -file1
    -file2
  -subDir2
    -file3
    -file4
 ...etc.

我正在遍历 mainDir 中的目录,并将该路径设置为 inotify 搜索的路径:

 for directory in os.listdir(self.path):
   new_path = os.path.join(self.path, directory)
   new_curr =  self.inotify.new_curr_file_notification(new_path)

新的路径值正是我所期望的:

 .../mainDir/subDir1
 .../mainDir/subDir2

将 new_path 传入我的函数(这是提供 inotify 的路径)时,我希望 inotify 只查看该目录。但是,我收到其他目录中的文件导致通知的通知。

path for inotify .../mainDir/subDir1
Event(wd=1, mask=256, cookie=0, name='someFileInSubDir2')
flags.CREATE

有谁知道为什么会这样?而且,如果有人有任何建议可以使这个过程更容易/更好,我会全力以赴!谢谢!

标签: pythoninotify

解决方案


我是 的作者inotify_simple,由于它没有一个名为 的方法new_curr_file_notification,我猜这就是你写的东西。如果没有看到该方法,或者没有更多代码可以准确地演示您如何使用该库,我很遗憾无法给您任何建议,因为没有足够的信息来了解您如何使用inotify_simple.

如果您发布一个完整的示例,我可能会知道出了什么问题。

如果看起来可能存在错误,请随时在项目的 github 上发布错误报告。


推荐阅读