跟踪Windows和Mac中的文件系统更改

我有一个基于文件系统的应用程序在Windows和Mac OS上编写的Java。

我的要求是跟踪目录下文件/文件夹的变化。 要跟踪的操作是正常的文件级操作,如CRUD。 当我的应用程序运行时,我可以从java nio运行监视服务,并可以跟踪更改(尽pipe检测重命名仍然是观看服务中的问题)。

我的问题来了,当我不得不检测应用程序没有运行时的变化。 我已经读过,文件备份软件通过Windows NTFS的更改日志function来完成。

我的问题如下

(a)是否有变更日志? NET的托pipe代码的c#(甚至在Java中)或只能通过c + +如示例中所示? (b)HFS加上(mac os)可以更改吗? 如果有,是否有apis可用(任何语言)? (c)当应用程序没有运行时,是否有更好的方法来跟踪文件系统中所做的更改?

干杯,

Saurav

读这个:

密切关注NTFS Change Journal