8

我想尝试有关分布式文件同步/复制的想法。为了在用户工作时提高效率,我想实现某种守护程序来监视某些目录中的更改(例如 /home/user/dirToBeMonitored 或 c:\docs 和 setts\user\dirToBeMonitored)。因此,我可以知道每次(或在合理的时间间隔内)添加/更改/删除了哪个文件名。

任何高中级语言都可以做到这一点吗?你知道一些 API(以及使用哪种语言?)来做到这一点?

谢谢。

4

4 回答 4

10

对于WindowsLinuxMac OS X和任何其他你可以命名的Unix ,API 似乎是完全不同的。我不知道有任何跨平台库以一致的方式处理这个问题。

于 2008-10-01T00:09:21.587 回答
9

一个合理的答案,尽管它需要一个较大的库依赖项(非常值得 IMO)!

QT 提供了QFileSystemwatcher类,它使用了底层平台的原生机制。

更好的是,您可以使用 Python 或 Ruby 的 QT 语言绑定。是一个使用QFileSystemWatcher的简单 PyQT4 应用程序。

笔记

于 2009-07-18T17:15:18.280 回答
0

在 Linux 中,它被称为inotify

于 2008-09-30T23:43:38.840 回答
0

在 OS X 上,它被称为fsevents。它是操作系统级别的 API,因此最容易从 C 或 C++ 访问。它应该可以从几乎任何语言访问,尽管您的首选语言的绑定可能尚未编写。

于 2008-10-01T00:11:14.670 回答