【问题标题】:Watching for file changes within a directory [duplicate]监视目录中的文件更改[重复]
【发布时间】:2012-01-12 14:51:47
【问题描述】:

可能重复:
How do I watch a file for changes using Python?
Detect File Change Without Polling

我正在尝试编写一个应用程序,当在特定目录及其子目录中修改或添加文件时,该应用程序必须执行操作。

我想一个理想的解决方案是绑定到某种类型的系统事件,当文件或目录被修改时由操作系统触发。另一个不太理想的解决方案是让我的应用程序以指定的时间间隔手动递归检查目录中的文件更改,但是如果每隔几分钟必须检查大量文件,这可能会变得非常耗时.

总结:我的应用程序监视目录中文件更改的最佳方式是什么?

对于这个问题的范围,假设我的应用程序是用 Python 编写的,并且操作系统是基于 Linux 的,但是对于其他语言和操作系统(如 Windows 或 Mac OS)解决这个问题的通用答案是最受欢迎的。

【问题讨论】:

  • stackoverflow.com/questions/5738442/… 的副本(Windows 也有 stackoverflow.com/questions/182197/…)。我已经投票关闭它作为第一个的副本,如果你投票关闭它,我会很感激你确保第二个也被提名......这可能是一个很好的路标问题。无论如何,在我看来,看门狗是最好的答案。出色的跨平台支持。
  • 克里斯,感谢这些链接,他们完美地回答了我的问题。我会投票关闭,但我似乎还没有特权。此问题可以重复关闭。

标签: python windows linux filesystems operating-system


【解决方案1】:

我认为 libnotify 是您正在寻找的。您会发现它几乎适用于所有语言和操作系统。这是给Python/Linux

【讨论】:

    【解决方案2】:

    正如您使用 Python Tag 提出的问题,您可能需要检查 pyinotify

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-25
      • 1970-01-01
      • 1970-01-01
      • 2010-12-13
      • 1970-01-01
      • 2013-08-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多