Linux系统find命令用法

Linux系统find命令用法

Linux查找命令find是Linux系统中最重要和最常用的命令之一,用于查找与指定参数条件匹配的文件及目录列表。find查找命令可以在各种条件下使用,我们可以通过权限,用户,组,文件类型,修改日期,大小等多种条件来查找文件。 这里我会以实例的形式向大家说明find命令的具体用法。

find命令的格式很简单,一般分成三个部分:1)find命令;2)搜索路径(目录可以写多个);3)表达式。对于find命令,最需要学习的是表达式这一段。表达式决定了我们要找的文件是什么属性的文件,还可以指定一些“动作”,比如将匹配某种条件的文件删除。所以,find命令的核心就是表达式的指定方法。在这里,我们首先用下表说明find命令各参数的含义:

 

find命令参数    具体含义

-name    按文件名称查找

-user    按文件拥有者查找

-group    按文件拥有组查找

-type    按文件类型查找

-perm    按文件权限查找

-exec    对查找到的文件执行指定动作

-maxdepth / -mindepth    指定查找范围最大/最小为第几级目录

-cmin    按文件修改时间查找

-size    按文件大小查找

-o / -a / -not    查找条件或/且/非
我使用的是3A服务器,延迟很低,价格便宜

实验步骤:find命令实例

1)首先切换到一个空目录/zxy中,建立实验素材:在/zxy中创建5个文件并更改部分文件的拥有者、拥有组,创建一个子目录并在该目录中创建5个文件


2)按名称查找/zxy中的文件,想要模糊查找时(即表达式中含有*)需要加" "


3)-mindepth x -maxdepth y指定查找目录范围为第x级子目录到第y级子目录,这里分别在/zxy的一级子目录、二级子目录中按名称查找文件





4)-a表示条件且查找,-o表示条件或查找,-not表示条件非查找,这里分别查找的是/zxy中文件拥有者为westos或lee的文件、文件拥有者和文件拥有组均为westos的文件、文件拥有者为westos但文件拥有组不为westos的文件


5)从/dev/zero中分别截取10M、20M、30M的空数据输入到/zxy下的指定文件中,修改文件大小


按文件大小查找/zxy中文件,20M表示查找大小为20M的文件,-20M表示查找大小在20M以内的文件,20M表示查找大小超过20M的文件


6)按修改时间查找/zxy中文件,1表示修改时间为1min的文件,-1表示在1min之内修改的文件,+1表示修改时间超过1min的文件



7)更改文件权限,按文件权限查找/zxy中文件,444表示查找文件权限为444的文件,-444表示查找文件权限u、g、o三位都含有4即读权限r的文件,/444表示查找文件权限u、g、o位(只要)任意一位有读权限r的文件






8)-exec可以对查找出来的文件执行参数后跟的操作,这个参数的常见格式是-exec command ;后面的分号是用来给find做标记用的,find在解析命令的时候,要区分给定的参数是要传给自己的还是要传给command命令的,所以find以分号作为要执行命令所有参数的结束标记。下图命令是在/zxy下查找文件权限u、g、o位(只要)任意一位有写权限w的文件,并对查找出的所有文件减去写权限,{}表示find命令查找结果

注意:在使用分号的时候前面要加转译字符\,因为分号也是bash的特殊字符,所以bash会先解释它,前面加上\就可以让bash直接将其传递给find命令,使这个分号由find解释,而不是bash




























































































全部评论
这个命令很实用
点赞 回复 分享
发布于 2022-08-11 11:04

相关推荐

不愿透露姓名的神秘牛友
06-20 18:18
是不是意味着秋招就完蛋了
花不开柳成荫:如果你是Java,是的
点赞 评论 收藏
分享
白火同学:大二有这水平很牛了,可以适当对关键信息加粗一点,比如关键技术、性能指标之类的。
点赞 评论 收藏
分享
05-19 19:57
蚌埠学院 Python
2237:Gpa70不算高,建议只写排名,个人技能不在多而在精,缩到8条以内。项目留一个含金量高的,减少间距弄到一页,硕士简历也就一页,本科不要写很多
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务