(一)文件查找
- locate
- 依赖于事先构建好的索引库
- 系统自动实现:周期性任务
- 手动更新数据库:updatedb命令,该命令非常消耗系统资源
- 工作特性
- 查找速度快
- 模糊查找
- 非实时查找(数据库里的内容可能是旧的)
- 使用方式:locate [OPTION]... PATTERN...
- -b:只匹配基名,不匹配路径名
- -c:只显示符合条件的文件的个数
- find
- 实时查找,通过遍历指定起始路径下文件系统的层级结构完成文件查找
- 工作特性
- 使用方式:find [OPTION]...[PATH] [CONDITION] [ACTION]
- PATH:搜索目标的起始路径,默认为当前路径
- CONDITION:指定的查找标准,可以根据文件名,大小,类型,从属关系,权限等等标准进行,默认找出路径下的所有文件
- 表达式:选项+测试
- 测试(结果为布尔型,要么满足,要么不满足):
- 根据文件名查找
- -name PATTERN:
- -iname PATTERN
- 以上PATTERN指glob机制的通配符,不是正则表达式。支持的通配符包括:*,?,[],[^]
- -regex PATTERN:基于正则表达式查找文件,匹配整个路径,而非基名。不常用。
- 根据文件从属关系查找
- -user UserName:查找属主为指定用户的文件
- -group GroupName:查找属组为指定组的文件
- -uid UID:查找属主UID为指定值的文件;注:如果用户被删除了,他的文件的属主就看不到该用户了,但是UID还在。
- -gid GID:查找属组GID为指定值的文件
- -nouser:查找没有属主的文件
- -nogroup:查找没有属组的文件
- 根据文件的类型查找
- -type TYPE:
- f:普通文件
- d:目录文件
- l:符号链接文件
- b:块设备文件
- c:字符设备文件
- p:管道文件
- s:套接字文件
- 组合测试
- 与:-a,默认组合逻辑,-a可以省略。例如find /etc -nouser -a -type f -ls
- ACTION:对符合条件的文件做出的操作,例如删除等等,默认为输出至标准输出
文件查找命令详解
原文:http://www.cnblogs.com/jacky1982/p/7638130.html