find
find 命令 - 文件搜索
find 是 Linux 中最强大的文件搜索工具,可以根据文件名、大小、修改时间、权限等多种条件递归查找文件,并支持对找到的文件执行操作。
文件管理

⌨️ 命令语法

find [路径] [表达式] [操作]

⚙️ 常用参数

-name按文件名查找(区分大小写,支持通配符)
-iname按文件名查找(不区分大小写)
-type按类型查找(f=文件,d=目录,l=符号链接)
-size按文件大小查找
-mtime按修改天数查找
-mmin按修改分钟数查找
-perm按权限查找
-user按所有者查找
-exec对找到的文件执行命令
-delete删除找到的文件

💡 实战示例

  • $ find . -name "*.log"
    在当前目录查找所有 .log 文件
  • $ find / -name "nginx.conf"
    全盘搜索 nginx.conf 文件
  • $ find . -type f -size +100M
    查找大于 100MB 的文件
  • $ find . -mtime -7
    查找最近7天修改过的文件
  • $ find . -name "*.tmp" -delete
    查找并删除所有 .tmp 文件
  • $ find /var/log -name "*.log" -mtime +30 -delete
    删除30天前的日志文件
  • $ find . -type f -exec chmod 644 {} \;
    查找所有文件并修改权限
  • $ find . -name '*.txt'
    查找当前目录下所有.txt文件
  • $ find /var -type f -size +100M
    查找/var下大于100M的文件

🔔 温馨提示

find 配合 -exec 可以实现批量操作。查找大文件用 find / -type f -size +1G。删除前建议先用 find 查看确认。

🔗 相关命令