信息发布→ 登录 注册 退出

Linux文件查找怎么做_find命令使用技巧详解【技巧】

发布时间:2025-12-17

点击量:
find是Linux最强大常用的实时文件查找命令,支持按名、类型、大小、时间、权限、内容等条件组合搜索;基础用法包括-name精准/模糊匹配、-type筛选文件类型、-size按大小过滤、-mtime/-atime按时间定位,以及-exec/+批量执行操作。

Linux里找文件,find 是最强大也最常用的命令。它不依赖索引,能实时遍历目录树,支持按名称、类型、大小、时间、权限、内容等多种条件组合查找,掌握核心用法就能解决90%的查找需求。

按文件名精准或模糊查找

最基础也最常用。注意区分大小写,用通配符时要加引号防止被shell提前展开。

  • find /path -name "filename":精确匹配(如 find /home -name "report.txt"
  • find /path -iname "readme*":忽略大小写 + 通配(如匹配 README.mdReadMe.TXT
  • find /var/log -name "*.log" -mtime -7:查近7天的log文件,常用于日志清理

按文件类型和大小筛选

避免误删或快速定位大文件、空文件等特殊目标。

  • find /tmp -type f -size +100M:找大于100MB的普通文件(f=文件,d=目录,l=软链接)
  • find /home -empty -type f:找出所有空文件(-empty 对目录也生效,加 -type d 可查空目录)
  • find . -size 0:当前目录下所有大小为0的文件(等价于 -empty,但更直观)

按修改/访问时间高效定位

时间单位是“天”,-mtime 表示修改时间,-atime 是访问时间,-ctime 是状态变更时间(如权限、所有者改变)。

  • find /data -mtime -1:1天内修改过的文件(注意:不是“昨天”,而是“过去24小时”)
  • find /backup -mtime +30 -name "*.tar.gz":找30天前修改、后缀为tar.gz的备份包
  • find /tmp -amin -5:5分钟内被访问过的文件(-amin 单位是分钟,适合调试或审计)

执行操作:查完直接处理

不用先找再手动操作,用 -exec+ 批量处理,安全又高效。

  • find /tmp -name "*.tmp" -exec rm {} \;:逐个删除({} 代表当前文件,\; 结束命令)
  • find /var/log -name "*.old" -exec mv {} /archive/ \;:移动旧日志
  • find . -name "*.log" -exec ls -lh {} +:批量执行 ls -lh+\; 更高效,类似 xargs)

find 命令灵活但容易因路径、引号、转义出错。建议从简单条件开始试,加 -print 显式输出结果确认无误后再加 -exec。熟练之后,配合管道和 grep 还能做更复杂的文本级筛选。

标签:# linux  # print  # var  # 最常用  # 就能  # 遍历  # 能做  # 它不  # 时要  # 再加  # 先找  # 可查  # 但更  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!