我正在 Linux 上用 C 编写一个小项目,但遇到了一个问题。 我必须制作一个模拟 WatchDog 事件的程序。所以我写了几乎所有的代码,但我不知道如何去做最重要的部分。 当我的应用程序在后台运行时,它必须检测何时访问某些文件。我已经在一些结构中存储了 inode 、这些文件的路径和名称。那么,有了这些关于文件的信息,我如何检测进程(任何进程,而不是某个进程)何时试图访问其中一个文件? 编辑:实际上,我必须检测以下事件:何时打开文件以及何时有人试图修改文件。例如,如果用户向文件写入内容然后尝试保存更改,我必须允许他或不允许他这样做。
最佳答案
您正在寻找文件系统观察器。为此,您可以使用 Inotify:http://en.m.wikipedia.org/wiki/Inotify
关于c - 如何检测某个文件何时被打开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28483191/