如何根据访问的持续时间(而不是时刻)列出给定时间段内的所有文件

如何根据访问的持续时间(而不是时刻)列出给定时间段内的所有文件

在linux下,如何列出给定目录及其子目录中的所有文件,在给定时间段内,例如最近10天,根据它们的访问持续时间,理想情况下结果应该按访问持续时间排序;以 hh:mm.ss 格式表示的持续时间参数

示例:在同一天,文件 F1 在 12:00:00 打开并在 12:30:00 关闭,我想要这个文件 30 分钟(或 30x60 秒),而如果文件说 F2 已在 12:01 打开:00 并于 12:02:00 关闭 我想要 1 分钟(或 60 秒)。

谢谢

答案1

默认情况下该信息不可用,但您可以从现在开始登录进而处理结果以获得您需要的结果。

理论上,有很多方法可以记录它,具体取决于访问这些文件的进程、文件所在的位置,如果您定期需要该信息或者正在调试...:inotifyauditctl(linux内核审计子系统)来请注意,甚至strace可以帮助您记录它。

对于通用解决方案,您可以使用类似以下内容:

记录文件系统是一个基于熔丝的文件系统,可以记录其中发生的每个操作。

无论如何,您将添加一层处理和日志记录,这至少会影响性能。

答案2

Linux 内核不会保留任何信息,我所知道的任何文件系统都不会拥有特定字段。

所以:你想要的东西是不可能的。信息不存在。

相关内容