如何在Linux中获取最近访问过的文件?
我对y
使用stat()
调用检查,但如果我打开并读取该文件,则不会更新。
答案 0 :(得分:1)
您可以使用noatime
或relatime
选项检查文件系统是否已挂载:
greek0@orest:/home/greek0$ cat /proc/mounts
/dev/md0 / ext3 rw,noatime,errors=remount-ro,data=ordered 0 0
...
经常使用这些挂载选项,因为它们可以提高文件系统性能。没有它们,文件的每次读取都会变成对磁盘的写入(用于更新atime)。
通常,您不能依赖atime在大多数计算机上具有任何有用的含义。
如果仅检测对程序运行时发生的文件的访问,则可以查看inotify。它提供了一种通知当前正在进行的文件系统访问的方法。
如果这不符合您的要求,我担心您运气不好。