语法格式
1 | find [路径] [选项] [操作] |
选项参数对照表
| 选项 | 含义 | |
|---|---|---|
| -name | 根据文件名查找 | |
| -iname | 根据文件名查找(忽略大小写) | |
| -perm | 根据文件权限查找 | |
| -prune | 该选项可以排除某些查找目录 | |
| -user | 根据文件属主查找 | |
| -group | 根据文件属组查找 | |
| -mtime -n \ | +n | 根据文件更改时间查找 |
| -nogroup | 查找无有效属组的文件 | |
| -nouser | 查找无有效属主的文件 | |
| -newer file1 ! file2 | 查找更改时间比file1新但比file2旧的文件 | |
| -type | 按文件类型查找 | |
| -size -n +n | 按文件大小查找 | |
| -mindepth n | 从n级子目录开始搜索 | |
| -maxdepth n | 最多搜索到n级子目录 |
-type
| 类别 | 含义 |
|---|---|
| f | 文件 |
| d | 目录 |
| c | 字符设备文件 |
| b | 块设备文件 |
| l | 链接文件 |
| p | 管道文件 |
-size
| 类别 | 含义 |
|---|---|
| +n | 大小大于n |
| -n | 大小小于n |
-mtime
| 类别 | 含义 |
|---|---|
| -time | time天以内的文件 |
| +time | time天以外的文件 |
find locate whereis which的区别
find
在磁盘中查找对应文件
locate
文件查找命令,所属软件包mlocate
不同于find命令再整块磁盘中搜索,locate命令在数据库文件中查找
- 数据库文件一般每日更新,也可通过命令(updatedb)即时更新。
- 用户更新/var/lib/mlocate/mlocate.db
- 所使用配置文件/etc/updatedb.conf
- 该任务在后台cron计划任务中定期执行
find是默认全部匹配,locate则是默认部分匹配
whereis
只能查询二进制文件,帮助文档文件,源代码文件。
| 选项 | 含义 |
|---|---|
| -b | 只返回二进制文件 |
| -m | 只返回帮助文档文件 |
| -s | 只返回源代码文件 |
which
仅查找二进制程序文件