find命令
Posted thelovelybugfly
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了find命令相关的知识,希望对你有一定的参考价值。
Linux文件查找详解
locate:
非实时,模糊匹配,查找根据全系统文件数据库进行的
#updatedb ,手动生成文件数据库
生成耗时,但是查找快
find:
实时
精确
支持众多查找标准
遍历指定目录中的所有文件完成查找,速度慢
find 查找路径 查找标准 查找到以后的处理运作
查找路径: 默认为当前目录
查找标准: 默认为指定路径下的所有文件
处理运作: 默认为显示到屏幕
匹配标准:
-name ‘filename‘:对文件名做精确匹配
文件名通配:
*:任意长度的任意字符
?
[]
-iname ‘filename‘:文件名匹配时不区分大小写
-regex PATTERN: 基于正则表达式进行文件名匹配
-user USERNAME: 根据属主进行查找
-group GROUPNAME:根据属组进行查找
-UID:
-GID:
-nouser:查找没有属主的文件
-nogroup: 查找没有属组的文件
-type 根据文件类型进行查找
-f: 普通文件
d:
c:
b:
l:
p:
s:
-size
[+][-]#k +大于 -小于 #kb的文件 没有+- 表示等于 -size +10k (查找大于10kb的文件)
#m
#G
组合条件: 如果没有给条件,默认为与
-a:and 与
-o:or 或
-not:非
-mtime 修改时间
-ctime 改变时间
-atime 访问时间
[+][-]#number 多少天
find /tmp -atime +7 ----> 查找tmp目录下至少7天没有访问过的文件
-mmin
-cmin
-amin
[+][-]# 同上,时间单位为分钟
-perm Mode: 根据权限查找
/mode 任意一位匹配即满足此条件
-MODE:文件权限能完全包含此MODE时才符合条件
find ./ -perl -001 --->查找其他用户有执行权限的文件
运作:
-print:显示
-ls: 类似于ls -l的形式显示每一个文件的详细
-ok COMMAND {引用的内容} \;每一次操作都需要用户确认,
-exec COMMAND {} \; 同-ok, 只是每一次操作都不需要用户确认
以上是关于find命令的主要内容,如果未能解决你的问题,请参考以下文章