Linux命令:find
最近更新时间 2019-12-12 16:49:40
find 命令常用于按条件查找系统中文件或目录。可以按各种条件进行过滤,比如系统权限、用户、文件类型和时间等。
通过这篇文章,我们会介绍find命令常用的参数和案例。
常用选项参数
-name
指定文件或目录名称。-type
指定文件类型,[ f 普通文件、l 符号连接、d 目录、c 字符设备、b 块设备、s 套接字]。-maxdepth<目录层级>
指定寻找目录深度,数字。-atime
指定访问时间,按天。-mtime
指定修改时间,按天。-ctime
指定变化时间,按天。-size
根据文件大小过滤,[ b 块、c 字节、w 字、k 千字节、M 兆字节等 ]。
常用命令介绍
1. 在当前目录下根据名称查找
在当前目录下查找所有 docsxyz.txt 的文件
#查找文件
find . -name docsxyz.txt
2. 根据名称查找文件忽略大小写
在/home目录下按名称docsxyz.txt查找所有文件,忽略名称的大小写
find /home -iname docsxyz.txt
./docsxyz.txt
./Docsxyz.txt
3. 根据名称查找目录
查找 / 目录下所有名称为 Docsxyz 的目录
find / -type d -name Docsxyz
/Docsxyz
4. 查找当前目录下所有PHP文件
查找当前面目录下所有 php 文件
# find . -type f -name "*.php"
./docsxyz.php
./login.php
./index.php
5. 根据文件权限查找
查找所有权限为 777 的文件
find . -type f -perm 0777 -print
6. 查找只读文件
查找当前目录下所有只读文件
find . -perm /u=r
7. 查找可执行文件
查找当前目录下所有可执行文件
find . -perm /a=x
8. 查找并删除文件
查找当前目录下 docsxyz.txt,并删除文件
find . -type f -name "docsxyz.txt" -exec rm -f {} \;
9. 查找所有空文件
查找 /tmp 目录下所有为空的文件
find /tmp -type f -empty
10. 查找隐藏文件
根据名称查找所有隐藏文件
find /tmp -type f -name ".*"
11. 查找最近10天修改的文件
查找当前目录下所有最近10天修改的文件
find . -mtime 10
12. 查找最近10天访问的文件
查找当前目录下所有最近10天访问的文件
find . -atime 10
13. 查找最近10-40天修改的文件
查找当前目录下所有最近10-40天修改的文件
find . -mtime +10 –mtime -40
14. 查找最近1小时修改的文件
查找当前目录下所有最近1小时修改的文件
find . -mmin -60
15. 查找10M的文件
查找当前目录下所有10M的文件
find . -size 10M