监视目录中的文件更改

时间:2011-12-04 13:23:03

标签: python windows linux filesystems operating-system

  

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

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

我认为理想的解决方案是绑定到修改文件或目录时操作系统触发的某种类型的系统事件。另一个不太理想的解决方案是我的应用程序手动,以指定的时间间隔递归检查目录中的文件更改,但如果每隔几分钟必须检查大量文件,这可能会产生极大的过程密集。

摘要:我的应用程序在目录中监视文件更改的最佳方法是什么?

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

2 个答案:

答案 0 :(得分:4)

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

答案 1 :(得分:3)

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