find 命令速查表

把 Linux find 命令最常用的查找条件和操作整理成速查表,找文件时对照查。

系统与运维·共 30 条命令·最后更新 2026-07-19
返回 系统与运维

按名称查找 By Name 5

find . -name "file.txt"
按文件名查找(支持通配符)
find . -iname "file.txt"
忽略大小写查找
find . -name "*.log"
查找所有 .log 文件
find . -name "file*"
查找 file 开头的文件
find /var/log -name "*.gz"
在指定目录查找

按类型查找 By Type 5

find . -type f
只查找普通文件
find . -type d
只查找目录
find . -type l
只查找符号链接
find . -type f -name "*.sh"
查找 .sh 文件
find . ! -type d
排除目录(查找非目录)

按大小查找 By Size 5

find . -size +100M
查找大于 100MB 的文件
find . -size -1k
查找小于 1KB 的文件
find . -empty
查找空文件或空目录
find . -size 0
查找大小为 0 的文件
find . -size +10M -size -100M
查找 10MB 到 100MB 之间的文件

按时间查找 By Time 5

find . -mtime -7
查找 7 天内修改过的文件
find . -mtime +30
查找 30 天前修改的文件
find . -mmin -60
查找 60 分钟内修改的文件
find . -atime -1
查找 1 天内访问过的文件
find . -newer file.txt
查找比 file.txt 更新的文件

按权限查找 By Permission 4

find . -perm 755
查找权限恰好为 755 的文件
find . -perm -u+x
查找用户有执行权限的文件
find . -perm /o+w
查找其他人有写权限的文件
find . -perm -g=w
查找组有写权限的文件

执行操作 Actions 6

find . -name "*.tmp" -delete
删除匹配的文件
find . -name "*.sh" -exec chmod +x {} \;
对每个文件执行命令
find . -name "*.log" -exec rm {} +
批量执行命令(更高效)
find . -name "*.txt" -print
打印匹配的文件路径
find . -name "*.bak" -ok rm {} \;
执行前逐个确认
find . -type f -exec ls -lh {} + | sort -k5 -rh
按大小排序

💡 提示

  • find 默认递归查找当前目录及子目录,用 -maxdepth 1 限制只查当前目录。
  • -exec 用 {} 代表找到的文件,\; 表示每个文件执行一次,+ 表示批量执行。
  • 删除文件前先用 -print 确认匹配结果,避免误删。