- A+
功能:用于查找目录及目录下的文件。
语法:find [路径][选项] [操作]
选项:
- -name 根据文件名查找
- -perm 根据文件权限查找
- -prune 该选项可以排除某些查找目录
- -user 根据文件属主查找
- -group 根据文件属主查找
- -mtime -n | +n 根据文件更改时间查找
- -nogroup 查找无效属组的文件
- -nouser 查找无有效属主的文件
- -newer file1 ! file2 查找更改时间比file1新但比file2旧IDE文件
- -type 按文件类型查找
- -size -n +n 按文件大小查找
- -mindepth n 从n级子目录开始搜索
- -maxdepth n 最多搜索到n级子目录
实例:
- 查找 /etc 目录下以 conf 结尾的文件,文件名区分大小写
- find /etc -name '*.conf'
- 查找当前目录下所有文件名为 aa 的文件,文件名不区分大小写
- [root@node02 ~]# find . -iname aa
- ./aa
- ./AA
- [root@node02 ~]#
- 查找文件所属用户为moonrong的所有文件
- [root@node02 home]# find . -user moonrong
- ./moonrong
- ./moonrong/.mozilla
- ./moonrong/.mozilla/extensions
- ./moonrong/.mozilla/plugins
- ./moonrong/.bash_logout
- ./moonrong/.bash_profile
- ./moonrong/.bashrc
- [root@node02 home]#
- 查找文件所属组为moonrong的所有文件
- find . -group moonrong
-type 根据类型查找:如下
- f 文件 find . -type f
- d 目录 find . -type d
- c 字符设备文件 find . -type c
- b 块设备文件 find . -type b
- l 链接文件 find . -type l
- p 管道文件 find . -type p
-size 根据文件大小查询
- -n 小于 大小为 n 的文件
- +n 大于 大小为 n 的文件
- 查找 /ect 目录下,小于 10000 字节的文件
- find /etc -size +10000c
- 查找 /etc 目录下,大于 1M 的文件
- find /etc -size -1M
-mtime
- -n n 天以内修改的文件。
- +n n 天以外修改的文件。
- n 正好 n天 修改的文件
- 查询 /etc 目录下,5天以内修改 且以 conf 结尾的文件
- find /etc -mtime -5 -name '*.conf'
查询 /etc 目录下,10天之前修改,且属于moonrong 的文件
- find /etc -mtime +10 -user moonrong
-mmin
- -n n 分钟以内修改过的文件
- +n n 分钟之前修改过的文件
- 查询 /etc 目录下 30分钟 之前修改过的文件
- find /etc -mmin +30
- 查询 /etc 目录下 30分钟 之前修改过的目录
- find /etc -mmin -30 -type d
-mindepth n 从第 n 级目录开始搜索
- 从 /etc 的第三级子目录开始搜索
- find /etc -mindepth 3
-maxdepth n 表示至多搜索到第 n-1 级子目录。
- 在 /etc 中搜索符合条件的文件,但最多搜索到 2级 子目录
- find /etc -maxdepth 3 -name '*.conf'
- find /etc -type f -name '*.conf' -size +10k -maxdepthc 2
- 将目前目录及其子目录下所有最近 20 天内更新过的文件列出
- find . -ctime -20
- 查找/var/log目录中更改时间在7日以前的普通文件,并在删除之前询问它们:
- find /var/log -type f -mtime +7 -ok rm {} \;
- 查找前目录中文件属主具有读、写权限,并且文件所属组的用户和其他用户具有读权限的文件:
- find . -type f -perm 644 -exec ls -l {} \;
- 服务器磁盘满,一般由大的日志文件导致,需找到大文件并删除
- find / -size +500M -print0|xargs -0 du -m|sort -nr