千家信息网

find文件命令查找详解

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,find命令详解大家或多或少使用过windows的文件查找,针对整个文件系统、部分分区,以文件名、时间等条件来进行文件查找。在Linux中主要通过locate和find这两个命令,来完成对文件查找。首
千家信息网最后更新 2026年10月31日find文件命令查找详解

find命令详解

大家或多或少使用过windows的文件查找,针对整个文件系统、部分分区,以文件名、时间等条件来进行文件查找。在Linux中主要通过locate和find这两个命令,来完成对文件查找。


首先,简单讲一下locate和find这两个命令的适应场景和各自特点。locate和find在Linux中都可以实现基于文件系统查找符合条件的文件,却有各自的特点和使用场景。locate命令在文件系统上实现文件查找,是基于事先构建好的搜索数据库来完成的。locate命令通过搜索数据库,而不是每次查找都遍历指定的文件系统,因此,可以快速的检索查找统计出符合条件的文件。


locate命令搜索查找的是数据库,数据库中有的文件,可以快速的查找,数据库中还未更新的,则无法查找到,因此通过locate命令查找文件,是非实时的查找,最近创建的文件还未在数据库中建立相关的索引等信息,无法查找到。

locate有两种更新搜索数据库的方法:

1、系统制定的计划任务,搜索遍历整个根文件系统,来自动完成数据库的更新

2、updatedb命令,手动更新数据库

因此,locate命令适用于非实时的、模糊的、快速查找


locate命令基本用法:

locate [option]...[pattern]...

常用选项:

-h 帮助信息

-i 忽略大小写

-c 统计共有多少符合条件的文件

-b 只显示匹配路径中的基名

-r 支持使用正则表达式来匹配pattern

一般,在Linux中locate命令查找文件,使用较少,多使用find命令,实现实时精确的文件查找。


find命令详解

find查找命令,是通过遍历指定的文件系统,匹配查找模式来完成查找,是实时的、精确查找。

find命令的基本用法:

find [option]...[查找文件路径] [查找条件] [查找后的处理动作]

常用选项:一般使用较少

查找文件路径:查找文件的起始路径,默认是当前工作目录

查找条件:指定的查找标准,可以是文件名、文件的大小、文件的类型、权限、从属关系、时间戳等标准来查找,默认为查找指定路径下的所有文件。

处理动作:对符合条件的文件作出操作,默认为标准输出。

备注:find查找文件,默认是glob文件名通配,而非正则表达元字符通配


查找条件:

-name "pattern" 根据文件名来查找文件

-iname "pattern" 根据文件名查找文件,忽略大小写

实例:

#find /etc -name pass* #在/etc目录下查找文件名以pass开头的文件

#find / -name pass* #在根目录下查找文件名以pass开头的文件

-regex "pattern" 根据正则表达式匹配查找

在find中使用较少,正则表达式工作在贪婪模式下,匹配的是整个路径而非基名


-user username 查找属主为指定用户的文件


-group groupname 查找属组为指定组的文件

-uid UID 查找属主为指定UID的文件

-gid GID 查找属组为指定GID的文件

-nouser 查找没有属主的文件

-nogroup 查找没有属组的文件

组合测试:

与:-a 默认组合逻辑

或:-o

非:-not或!

备注:组合测试时如用括号需转义 \( \)


-type TYPE 根据文件类型查找

f普通文件 d目录 l链接文件 b块设备 c字符设备文件 p管道 s套接字

-size [+|-]#单位 根据文件大小来查找

常用单位:k M G

备注:-size 3M:查找出来的文件是满足小于4M大于2M的范围的文件

-size +3M:查找的是4M及大于4M的文件

-size -3M:查找的是2M及小于2M的文件

根据时间戳查找

以天为单位

-atime [+|-]#

-mtime [+|-]#

-ctime [+|-]#

以分为单位

-amin [+|-]#

-mmin [+|-]#

-cmin [+|-]#

实例:#find /etc -mtime -7 #查找7天内修改过的文件

根据权限查找

-perm [/|-]mode

备注:-perm mode:精确匹配权限位

-perm /mode:任意一类用户(u,g,o)的任何权限位,任何一个符合条件即满足(9个权限位只要有一个满足即可,是或的逻辑关系)

-perm -mode:每一类用户(u,g,o)的权限位(r,w,x)的每一位,同时符合条件即满足(9个权限位之间是与的逻辑关系)

实例:#find /etc -not -perm /222 -type f #查找所有用户都没有写权限的文件

处理动作:

-print 输出至标准输出,默认动作

-ls 类似于对查找到的文件执行"ls -l"命令,输出文件的详细信息

-delete 删除查找到的文件

-fls /path/to/file 把查找到的所有文件的长格式信息保存至指定的文件中

-ok command {} \; 对查找到的每个文件都交给command来执行,每个文件执行都要用户确认

-exec command {} \; 对查找到的每个文件都交给command来执行,不需要用户确认

备注:find查找到的文件路径传给后面的command,是先查找出所有符合条件的文件路径,并一次性传递给后面的命令,但是有些command不能接受过长的参数,此时command执行会失败。另有一种方式可以规避此问题:#find ... | xargs command


文件 命令 条件 数据 数据库 权限 路径 文件名 系统 用户 备注 搜索 信息 动作 单位 大小 实时 标准 正则 更新 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 天津市摩尔互联网科技 互联网科技卖菜 重庆互联网络科技 中国 科技 互联网 互联网 卓越科技 广州宏创互联网科技 长亮科技 互联网金融 互联网 科技服务平台 恒银科技与互联网金融 福州新华互联网科技学校 知乎 国大互联网教育科技有限公司工作 中国互联网公司排名锤子科技 科技赋能视角下互联网保险发展 滨湖区互联网智能科技产品有哪些 雨阳互联网卡科技有限公司 半导体行业属于互联网高科技类吗 广西泛欧互联网科技有限公司 互联网对科技影响 10位科技互联网大佬 前海云享互联网科技 深圳恒合互联网络科技有限公司 致骋互联网科技 云电互联网科技 多迪互联网科技有限公司 互联网科技公司的市场部门 米聚互联网科技南京有限公司排面 深圳互联网科技的发展 银行科技岗属于互联网吗 互联网科技企业商标注意事项 互联网科技手抄报图片
0