一、在指定目录下查找需要的文件:-name,-iname
文件名称符合 name 的文件。iname 会忽略大小写。
例子:
find ./ -name "leds.c"
可以使用通配符进行搜索。加上引号是为了可以在使用通配符的时候命令得到正确的解析。
二、按文件大小查询:-size
find + 路径 + -size + 范围
大于:+表示 -- +100k
小于:-表示 ---10k
等于: 不需要添加符号 -- 100k
大小:k和M,区分大小写
例子:
等于100k的文件: find ~/ -size 100k file1
大于100k的文件: find ~/ -size +100k file2
大于50k, 小于100k的文件: find ~/ -size +50k -size -100k file3
三、按文件类型查询:-type
find + 路径 + -type + 类型
类型分类:
1. 普通文件类型用 f 表示而不是 -
2. d -> 目录
3. l -> 符号链接
4. b -> 块设备文件
5. c -> 字符设备文件
6. s -> socket文件,网络套接字
7. p -> 管道
例子:find /home -type d dir
四、按日期查询
1、创建日期-ctime
2、修改日期 -mtime
3、访问日期: -atime
参数:
-n:n天以内
+n:n天以外
五、按深度搜素
-maxdepth n(层数) 搜索n层以下的目录 find ./ -maxdepth 3 -name "1.txt"
-mindepth n(层数) 搜索n层以上的目录 find ./ -mindepth 3 -name "1.txt"
六、高级查找
例:子查找指定目录,并列出该目录中文件的详细信息
find ./ -type d -exec ls -l (shell 命令) {} \;
find ./ -type d -ok ls -l (shell 命令) {} \; 安全性较高
find ./ type d | xargs ls -l (shell 命令) 效率较高