shell find 根据时间获取文件列表

根据时间得到文件,可以使用find进行查找,支持查找:

find以时间为条件查找可用选项:

  • -amin n:查找n分钟以前被访问过的所有文件。
  • -atime n:查找n天以前被访问过的所有文件。
  • -cmin n:查找n分钟以前文件状态被修改过的所有文件。
  • -ctime n:查找n天以前文件状态被修改过的所有文件。
  • -mmin n:查找n分钟以前文件内容被修改过的所有文件。
  • -mtime n:查找n天以前文件内容被修改过的所有文件。

atime:访问时间(access time),指的是文件最后被读取的时间,可以使用touch命令更改为当前时间;
ctime:变更时间(change time),指的是文件本身最后被变更的时间,变更动作可以使chmodchgrpmv等等;
mtime:修改时间(modify time),指的是文件内容最后被修改的时间,修改动作可以使echo重定向、vi等等;

例如:

$ find ./ -mtime +3 -type f # 查找3天之前修改过的文件("-type f"指明是文件)
$ find ./ -mtime -3 -type f # 查找3天之内修改的文件
$ find ./ -mtime 3 -type f # 查找前3天修改的文件
$ find ./ -mtime +1 -mtime -4 -type f # 查找前2天和前3天修改的文件

# 查找指定时间段的内容(有些嵌入式设备不一定支持"-newermt"选项)
$ find ./ -newermt '2022-11-17 11:00:00' ! -newermt '2022-11-17 11:30:00' -type f
posted @ 2022-11-17 17:36  大橙子疯  阅读(1671)  评论(0编辑  收藏  举报