find命令的功能是根据给定的路径和条件查找相关文件或目录,可以使用的参数很多,并且支持正则表达式,结合管道符后能够实现更加复杂的功能,是系统管理员和普通用户日常工作必须掌握的命令之一。
find命令通常进行的是从根目录(/)开始的全盘搜索,有别于whereis、which、locate等等的有条件或部分文件的搜索。
对于服务器负载较高的情况,建议不要在高峰时期使用find命令的模糊搜索,会相对消耗较多的系统资源。
在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间(这里是指30G以上的文件系统)
find命令的语法格式和参数,我们可以使用 find --help查看:
[root@doc ~]# find --help

常用参数:


执行的动作:

总结下最常用的参数:
案例一:
目录下所有的txt文件,指的是以txt结尾的文件 , 使用通配符*.txt 即可
[root@doc ~]# find . -name "*.txt"

案例二 在/var/log目录下搜索所有指定后缀的文件,后缀不需要大小写。
案例三: 在/var/log目录下搜索所有后缀不是.log的文件:
类型参数列表:
案例一: 查找当前目录下所有的普通文件
案例一:查找root目录下更改时间在1天之内的且被修改过的文件
案例二:搜索当前工作目录中的所有近7天(七天内)被修改过的文件
案例三: 搜索恰好在七天前被访问过的所有文件
案例四:搜索超过七天内被访问过的所有文件
案例五: 搜索访问时间超过20分钟的所有文件
案例一:查找以.bak结尾的文件,并删除:
可以看到这样就把以.bak结尾的文件全部删除了,这里需要注意的是 exec {} ; 是一个完整的语法,不能落下。

还有一种方式:
案例二:
-exec后面可以使用任意命令,比如cp。案例如下:
案例三:
在全盘搜索系统中所有后缀为.mp4的文件,并删除所有查找到的文件({}表示find找到的文件, ; 用来结束命令):
常用的比较符如下:
文件大小的单位:
案例一:
查找/etc/下文件大小为大于20K 小于50K的文件,并统计个数
案例二: 在/etc目录中搜索所有大于1M大小的文件:
也可以通过权限,所有者,所属组来进行查询:
案例一: 在/usr目录中所有属于mysql用户的文件目录
案例二: 查找当前目录用户组mufeng拥有的所有文件
案例三: 按权限查找 -perm
例如: 查找/etc权限为755的文件或者目录
案例四: 全盘搜索系统中所有类型为目录,而且权限为1777(1代表粘滞位,只有创建者和root用户可以删除)的目录文件:
案例一 : 搜索出深度距离当前目录至少2个子目录的所有文件
案例二:向下最大深度限制为3
find命令是日常用的最多的命令,参数也比较多,也是面试最常问的命令参数之一,值得下功夫学习。
到此这篇删除命令linux目录log结尾(linux删除目录后指定后缀的文件)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/hd-yjs/15276.html