CentOS Find 命令详解

CentOS Find 命令是Linux系统中用于查找文件和目录的工具,它通过指定路径、文件名、文件类型等条件,在文件系统中搜索匹配的文件,Find 命令功能强大,灵活多变,是系统管理员和开发人员常用的命令之一。
基本语法
find [路径] [选项] [表达式]
- 路径:指定搜索的起始目录。
- 选项:控制搜索行为。
- 表达式:定义搜索条件。
常用选项
| 选项 | 说明 |
|---|---|
| -name | 根据文件名搜索 |
| -type | 根据文件类型搜索 |
| -size | 根据文件大小搜索 |
| -mtime | 根据文件最后修改时间搜索 |
| -user | 根据文件所有者搜索 |
| -group | 根据文件所属组搜索 |
| -perm | 根据文件权限搜索 |
示例
查找当前目录下所有名为“example.txt”的文件:
find . -name "example.txt"
查找当前目录及其子目录下所有类型为目录的文件:

find . -type d
查找当前目录下大小为100KB的文件:
find . -size +100k
查找当前目录下最后修改时间在3天前的文件:
find . -mtime 3
查找当前目录下属于用户“root”的文件:
find . -user root
组合使用
Find 命令可以组合多个选项和表达式,实现更复杂的搜索需求,以下是一个示例:
find . -name "*.txt" -size +100k -mtime 3
这个命令会查找当前目录及其子目录下,所有扩展名为.txt的文件,文件大小大于100KB,且最后修改时间在3天前的文件。

| 选项 | 说明 | 示例 |
|---|---|---|
| -name "example.txt" | 按文件名搜索 | find . -name "example.txt" |
| -type d | 按文件类型搜索 | find . -type d |
| -size +100k | 按文件大小搜索 | find . -size +100k |
| -mtime 3 | 按文件最后修改时间搜索 | find . -mtime 3 |
| -user root | 按文件所有者搜索 | find . -user root |
FAQs
问题:如何查找当前目录下所有包含“error”字符串的文件? 解答:可以使用
-exec选项结合grep命令来实现。find . -name "*error*" -exec grep "error" {} \;问题:如何查找当前目录下所有权限为“-rwxr-xr-x”的文件? 解答:可以使用
-perm选项来实现。find . -perm 755

