2012-11-29 40 views
0

在OS X上,有一個API爲磁盤上的給定文件創建「書籤」,即使它被移動或重命名,它也會跟蹤其目標。然後,OS X應用程序可以將書籤序列化,並以任何方式存儲它,並且在稍後的日期(可能在退出並重新啓動後)對書籤進行反序列化並解析文件路徑。在Linux上通過身份跟蹤文件

Linux是否有類似的功能?

回答

0

http://en.wikipedia.org/wiki/Inotify

我想這是的inotify你想要的東西。 使用inotify,您可以監視文件的以下事件:

IN_ACCESS - read of the file 
IN_MODIFY - last modification 
IN_ATTRIB - attributes of file change 
IN_OPEN - open of file 
IN_CLOSE_WRITE - sent when a file opened for writing is closed 
IN_CLOSE_NOWRITE - sent when a file opened not for writing is closed 
IN_MOVED_FROM and IN_MOVED_TO - when the file is moved or renamed 
IN_DELETE - a file/directory deleted 
IN_CREATE - a file in a watched directory is created 
IN_DELETE_SELF - file monitored is deleted 
+0

inotify只能在進程運行時運行,否?我沒有看到任何方式來跨進程重新啓動持久化inotify實例。 –

+1

@NickHutchinson是的。如果您想在自己的應用程序中記錄給定文件的事件,它不能成爲解決方案。如何使用inotify製作一些監視器守護進程?監控守護程序記錄給定文件的事件和您自己的應用程序使用該日誌信息。聽起來很尷尬? –

+0

聽起來很尷尬,但它似乎是唯一的方法。 –