Linux怎么查找7天前的文件

夜辰大大_2771

夜辰大大_2771

2026-08-06

322人浏览

原创

-mtime +7 表示修改时间超过7天(即8天及以上),实际匹配2026-06-30及更早文件,而非字面“7天前”;其计算基于24小时向下取整,存在1天空档(-mtime 7对应恰好第7天),应配合-type f、-name、-ls等安全预览,慎用-delete。

linux怎么查找7天前的文件

find 命令本身不支持“7天前”这种精确到某一天的语义,它只能按“修改时间大于/小于 N 天”来筛选。所以你要找的是「修改时间超过 7 天」的文件,即 -mtime +7 —— 这实际匹配的是 8 天及更早 的文件(含 2026-06-30 及之前),不是字面意义的“2026-07-01 那天的文件”。


为什么 -mtime +7 不等于“7天前”

Linux 的 -mtime 是基于 24 小时周期向下取整计算的:
– 文件在 2026-07-01 00:00:01 修改 → 到今天(2026-07-08)已过 7 天零 1 秒 → -mtime +7 会包含它
– 文件在 2026-07-01 00:00:00 修改 → 到今天刚满 7 天 → -mtime +7 不包含(因为要求 > 7 天)
所以真正被选中的最早日期是 2026-06-30(含)及更早。

  • 想查“恰好第 7 天”的文件?用 -mtime 7(即修改时间落在 2026-07-01 00:00:00 ~ 2026-07-01 23:59:59 区间)
  • 想查“7 天内”(含今天)?用 -mtime -7
  • -mtime +7 和 -mtime -7 是互补关系,但中间有 1 天空档(-mtime 7)

如何安全预览再删除

别直接上 -delete。先确认路径、类型、命名是否准确:

  • 加 -type f 排除目录,避免误删整个子树
  • 用 -name "*.log" 或 -name "backup_*.tar.gz" 锁定扩展名或前缀
  • 加 -ls 查看权限、大小、完整路径和修改时间戳,人工核对
  • 示例:find /var/log -type f -name "*.log" -mtime +7 -ls

生产环境必须加的防护项

线上跑自动清理脚本,漏掉这几项容易删错:

Zynq Linux Hardware Debug
Zynq Linux Hardware Debug

Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。

下载
  • -maxdepth 1:防止递归进子目录(比如 /backup/db/old/ 下还有 /backup/db/old/archive/)
  • ! -name "latest.*":排除保留文件(如 latest.sql、latest.tar.gz)
  • 路径末尾不带 /*,写成 /backup 而非 /backup/(避免 shell 展开干扰)
  • 确认当前用户对目标文件有 w 权限,否则 -delete 会静默失败

替代方案:用 -mmin 更精确控制小时级

如果需要严格限定“7×24=168 小时前”,可用分钟单位:

  • -mmin +10080(10080 = 7 × 24 × 60)
  • 注意:-mmin 精度高,但某些老旧系统或 NFS 挂载点可能不支持
  • 验证是否可用:find . -mmin +1 -ls | head -n1,看是否报错

最易忽略的一点:时间判断依赖系统本地时区,且 -mtime 基于文件的 st_mtime,不是创建时间(Linux 没有标准创建时间字段)。如果备份脚本用 touch -d "2026-06-30" file 伪造时间,那 -mtime 就只认这个伪造值。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

3990

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3413

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2573

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

6230

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

5882

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

3433

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

2925

4

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

2023.07.25

3159

6

linux查找文件命令
linux查找文件命令

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.31

297

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习