locate:
非实时,模糊匹配,查找是根据全系统文件数据库进行的;速度快!
#updatedb :手动生成数据库文件
find:
实时
精确
支持众多查找标准
遍历指定目录中的所有文件完成查找,速度慢!
find 查找路径 查找标准 查找到以后的处理运作
查找路径:默认为当前目录
查找标准:默认为指定路径下的所有文件
处理运作:默认显示
匹配标准:
-name 'Filename' :对文件名作精确匹配
文件名统配:
* :任意长度的任意字符
?
[]
-iname 'Filename' :文件名匹配时不区分大小写
-regex PATTERN :基于正则表达式进行文件名匹配
-user USERNAME:根据UID查找
-group GROUPNAME:根据属组查找
-uid UID:根据UID查找
-gid GID:根据GID查找
-nouser:查找没有属主的文件
-nogroup:查找没有属组的文件
-type :文件类型来查找
f:普通文件
d:目录
c:字符
b:块设备
l:链接文件
p:管道设备
s:套接设备
-size 根据文件大小查找
#k +k :大于多少k -k :小于多少k
#M
#G
组合条件:
-a :与
-o :或
-not :非
例:查找当前目录下属主既不是uesr1又不是user2的文件
#find ./ -not -user user1 -a -not -user user2
或
#find ./ -not \(-user user1 -o -user user2\)
-mtime:修改时间
-ctime:改变时间
-atime:访问时间
[+/-] +:表示至少有多少天没有访问过了 -:多少天之内访问过
-mmin
-cmin
-amin
[+/-] +:表示至少有多少分钟没有访问过了 -:多少分钟之内访问过
-perm MODE
/mode:任意一位匹配即满足条件
-mode:文件权限能完全包含此mode时才能显示
find的动作:
-print:显示
-ls:类似ls -l的形式显示每一个文件的详细
-ok command {} \;每一次操作都需要用户确认
-exec command {} \;
原文地址:http://blog.51cto.com/10868195/2045646