find 批量清理旧文件
Linux系统
2026-10-27 17:47
4
find 的 -delete 用错一次,可能删掉不该删的。Linux 上的问题大多有明确原因,难的不是解决,而是先定位到是哪一层出的问题。
下面按“先判断范围、再处理、最后防复发”的顺序展开,涉及 find、清理 的关键动作都给了具体做法,可以照着走。
按时间
find /log -type f -mtime +7。
出现异常先回退到上一个已知可用状态,再慢慢找原因。
按大小
-size +100M 找大文件。
容易踩的坑:变更没留记录,下次故障时没人知道上一轮改了什么。
先看后删
去掉 -delete 先输出清单。
优先选可回退的方案,别用一次性操作换速度。
配合 cron
加日志并在删除前统计数量。
速查表
| 环节 | 关键动作 |
|---|---|
| 按时间 | find /log -type f -mtime +7 |
| 按大小 | -size +100M 找大文件 |
| 先看后删 | 去掉 -delete 先输出清单 |
| 配合 cron | 加日志并在删除前统计数量 |
常见问题
Q:find这类问题,最快的判断办法是什么?
先确认现象的范围:只有单台还是全部、只在某个时段还是持续。范围一缩小,原因基本就浮出来了。
Q:按文中的步骤做完,还需要注意什么?
把处理过程和最终生效的参数记下来。同类问题再出现时直接对照记录,比重查一遍快得多。
小结
回到这篇的四个环节:按时间、按大小、先看后删、配合 cron。命令行操作贵在可复现:把有效的命令记进运维笔记,比记在脑子里靠谱。