2009-09-18 39 views
2

在Windows中,我可以使用FindNextChangeNotification API来查看文件或文件夹的更改。例如,我可以观看文件夹,并在添加或删除文件时收到通知。如何在OS X中接收文件系统更改的通知?

OS X上是否有类似的API?

+0

我发现我可以用Spotlight做到这一点,但我正在寻找更低级别的解决方案。 – 2009-09-18 03:06:42

+0

也检出[fswatch从这个问题](http://stackoverflow.com/questions/1515730/is-there-a-command-like-watch-or-inotifywait-on-the-mac/13807906#13807906) – cwd 2013-06-06 13:04:42

回答

2

FSEvents是好的,但对于看只是一小部分的文件或文件夹,它是相当矫枉过正,它确实需要豹或更新。 (底层技术是在Tiger中引入的,但API并未公开)。

作为一种可能的备选方案,请注意OS X从FreeBSD继承kqueue(至少从Panther开始)。您可以搜索EVFILT_VNODE用法的示例,这就是您想要用来监视文件更改的示例。