怎么在Linux中使用find命令查找文件
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,怎么在Linux中使用find命令查找文件?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。语法:find + 目标目录(路
千家信息网最后更新 2025年12月02日怎么在Linux中使用find命令查找文件
怎么在Linux中使用find命令查找文件?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
语法:find + 目标目录(路径) + <选项> + 参数
常用选项列表
| 选项 | 含义 |
|---|---|
| -perm <权限数值> | 查找符合指定的权限数值的文件或目录 |
| -type <文件类型> | 只寻找符合指定的文件类型的文件 |
| -name <范本样式> | 指定字符串作为寻找文件或目录的范本样式 |
| -expty | 寻找文件大小为 0 Byte 的文件,或目录下没有任何子目录或文件的空目录 |
| -ls | 假设find指令的回传值为ture,就将文件或目录名称列出到标准输出 |
| -maxdepth <目录层级> | 设置最大目录层级 |
| -mindepth <目录层级> | 设置最小目录层级 |
| -exec <执行指令> | 假设find指令的回传值为true,就执行该指令 |
| -ok <执行指令> | 此参数的效果和指定-exec类似,但在执行指令之前会先询问用户,若回答y或Y,则放弃执行命令 |
示例
首先,给出演示使用的文件结构:
示例 1:查找当前目录及其子目录下所有文件和文件夹
find .
示例 2:在/testLinux目录下查找以.txt结尾的文件名
// 需要书写完整的路径find /tmp/cg/testLinux -name "*.txt"
示例 3:组合查找文件名以file1开头(与、或、非)file2开头的文件
/** * 组合查找语法: * -a 与(取交集) * -o 或(取并集) * -not 非(同 !) * ! 非(同 not) */find . -name "file1*" -a -name "file2*"find . -name "file1*" -o -name "file2*"find . -name "file1*" -not -name "file2*"find . -name "file1*" ! -name "file2*"
示例 4:根据文件类型进行搜索
/** * 查找当前目录及所有子目录下的普通文件 */find . -type f
示例 5:基于目录深度进行搜索
/** * 限制最大深度为 3 */find . -maxdepth 3 -type f/** * 限制最大深度为 2 */find . -maxdepth 2 -type f

示例 6:基于文件权限进行搜索
/** * 搜索权限为 777 的文件 */find . -type f -perm 777/** * 搜索 .txt 格式且权限不为 777 的文件 */find . -type f -name "*.txt" ! -perm 777
示例 7:借助-exec命令,将当前目录及子目录下所有.txt格式的文件以File:文件名的形式打印出来
find . -type f -name "*.txt" -exec printf "File: %s\n" {} \;示例 8:借助-exec命令,将当前目录及子目录下所有 3 天前的.txt格式的文件复制一份到old目录
find . -type f -mtime +3 -name "*.txt" -exec cp {} old \;文件类型参数列表
| 文件类型参数 | 含义 |
|---|---|
| f | 普通文件 |
| l | 符号连接 |
| d | 目录 |
| c | 字符设备 |
| b | 块设备 |
| s | 套接字 |
| p | Fifo |
文件大小单元列表
| 文件大小单元 | 含义 |
|---|---|
| b | 块(512 字节) |
| c | 字节 |
| w | 字(2 字节) |
| k | 千字节 |
| M | 兆字节 |
| G | 吉字节 |
选项列表
| 选项 | 含义 |
|---|---|
| -amin <分钟> | 查找在指定时间曾被存取过的文件或目录,单位以分钟计算 |
| -atime <24小时数> | 查找在指定时间曾被存取过的文件或目录,单位以 24 小时计算 |
| -cmin <分钟> | 查找在指定时间之时被更改过的文件或目录 |
| -ctime <24小时数> | 查找在指定时间之时被更改的文件或目录,单位以 24 小时计算 |
| -anewer <参考文件或目录> | 查找其存取时间较指定文件或目录的存取时间更接近现在的文件或目录 |
| -cnewer <参考文件或目录> | 查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录 |
| -daystart | 从本日开始计算时间 |
| -depth | 从指定目录下最深层的子目录开始查找 |
| -expty | 寻找文件大小为 0 Byte 的文件,或目录下没有任何子目录或文件的空目录 |
| -exec <执行指令> | 假设find指令的回传值为true,就执行该指令 |
| -false | 将find指令的回传值皆设为false |
| -fls <列表文件> | 此参数的效果和指定-ls参数类似,但会把结果保存为指定的列表文件 |
| -follow | 排除符号连接 |
| -fprint <列表文件> | 此参数的效果和指定-print参数类似,但会把结果保存成指定的列表文件 |
| -fprint0 <列表文件> | 此参数的效果和指定-print0参数类似,但会把结果保存成指定的列表文件 |
| -fprintf <列表文件> <输出格式> | 此参数的效果和指定-printf参数类似,但会把结果保存成指定的列表文件 |
| -fstype <文件系统类型> | 只寻找该文件系统类型下的文件或目录 |
| -gid <群组识别码> | 查找符合指定群组识别码的文件或目录 |
| -group <群组名称> | 查找符合指定群组名称的文件或目录 |
| -help或--help | 在线帮助 |
| -name <范本样式> | 指定字符串作为寻找文件或目录的范本样式 |
| -iname <范本样式> | 此参数的效果和指定-name参数类似,但忽略字符大小写的差别 |
| -ilname <范本样式> | 此参数的效果和指定-lname参数类似,但忽略字符大小写的差别 |
| -inum | 查找符合指定的inode编号的文件或目录 |
| -path <范本样式> | 指定字符串作为寻找目录的范本样式 |
| -ipath <范本样式> | 此参数的效果和指定-path参数类似,但忽略字符大小写的差别 |
| -iregex <范本样式> | 此参数的效果和指定-regexe参数类似,但忽略字符大小写的差别 |
| -links <连接数目> | 查找符合指定的硬连接数目的文件或目录 |
| -ls | 假设find指令的回传值为ture,就将文件或目录名称列出到标准输出 |
| -maxdepth <目录层级> | 设置最大目录层级 |
| -mindepth <目录层级> | 设置最小目录层级 |
| -mmin <分钟> | 查找在指定时间曾被更改过的文件或目录,单位以分钟计算 |
| -mount | 此参数的效果和指定-xdev相同 |
| -mtime <24小时数> | 查找在指定时间曾被更改过的文件或目录,单位以 24 小时计算 |
| -newer <参考文件或目录> | 查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录 |
| -nogroup | 找出不属于本地主机群组识别码的文件或目录 |
| -noleaf | 不去考虑目录至少需拥有两个硬连接存在 |
| -nouser | 找出不属于本地主机用户识别码的文件或目录 |
| -ok <执行指令> | 此参数的效果和指定-exec类似,但在执行指令之前会先询问用户,若回答y或Y,则放弃执行命令 |
| -perm <权限数值> | 查找符合指定的权限数值的文件或目录 |
| 假设find指令的回传值为ture,就将文件或目录名称列出到标准输出,格式为每列一个名称,每个名称前皆有./字符串 | |
| -print0 | 假设find指令的回传值为ture,就将文件或目录名称列出到标准输出,格式为全部的名称皆在同一行 |
| -printf <输出格式> | 假设find指令的回传值为ture,就将文件或目录名称列出到标准输出,格式可以自行指定 |
| -prune | 不寻找字符串作为寻找文件或目录的范本样式 |
| -regex <范本样式> | 指定字符串作为寻找文件或目录的范本样式 |
| -size <文件大小> | 查找符合指定的文件大小的文件 |
| -true | 将find指令的回传值皆设为true |
| -type <文件类型> | 只寻找符合指定的文件类型的文件 |
| -uid <用户识别码> | 查找符合指定的用户识别码的文件或目录 |
| -used <日数> | 查找文件或目录被更改之后在指定时间曾被存取过的文件或目录,单位以日计算 |
| -user <拥有者名称> | 查找符和指定的拥有者名称的文件或目录 |
| -version或--version | 显示版本信息 |
| -xdev | 将范围局限在先行的文件系统中 |
| -xtype <文件类型> | 此参数的效果和指定-type参数类似,差别在于它针对符号连接检查 |
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
文件
目录
参数
时间
指令
效果
字符
名称
大小
示例
子目
子目录
单位
字符串
字节
格式
类型
命令
差别
权限
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
如何在同一列筛选相同数据库
软件开发过程百科
access宇哥数据库案例
数据库审计市场分析
腾讯服务器镜像系统怎么选择
网络安全的事例50字
数据库查看表的授权信息的代码
软件开发是需要数学好的吗
主键定位删除数据库
服务器测试脚本使用什么语言写的
江苏hpe服务器哪家好
达梦数据库启动服务后端口没打开
全球获客软件开发
前端软件开发工程师简历
安卓数据库宝库数组源码
蚌埠设备维护管理软件开发平台
龙岗区服务器机柜
庆阳电信杯网络安全大赛视频
图数据库建模数据集市
珠海应用软件开发设计
周村销售采购生产软件开发公司
数据库技术的基础论文
信息技术考试数据库
邢台县网络安全
网络安全理论与技术实验报告
服务器开关图示
网络安全审查左胜高
网络安全广州
网络安全与信息化管理处
mc服务器如何给管理