参考资料
find 指定目录 寻找条件 查完后执行的动作
配置项(简写) | 说明 |
---|---|
-name | 按照文件名查找文件,不忽略大小写 |
-iname | 按照文件名查找文件,忽略大小写 |
-type | 按照文件类型查找文件 |
-size | 按照文件大小查找 |
-perm | 按照权限查找 |
-user | 按照用户名查找 |
⏹-type
配置项的描述符
d
:文件夹f
:普通文件l
:链接文件⏹-size
配置项的描述符
c
:字节k
:KBM
:MBG
:GB动作 | 说明 |
---|---|
-exec 命令体 {} ; | 对符合条件的文件执行所给的Linux 命令,而不询问用户是否需要执行该命令 命令的末尾必须以 \; 结束 |
-ls | 详细列出所找到的所有文件 |
在标准输出设备上显示查找出的文件名 | |
xrags |
⏹当查找后缀名为.sh的文件时,需要使用双引号包裹,否则查询无效
# 在当前目录的 jmw_work_space 文件夹下查找 后缀为 .sh 的文件
find ./jmw_work_space/ -name "*.sh"
find ./jmw_work_space/ -name *.zip
find ./jmw_work_space/ -name "20240[0-9]*.txt"
⏹查找文件名后缀为.sh
并且 所属用户为 root
的文件
find ./jmw_work_space/ -name "*.sh" -user root
⏹查找后缀名为.sh
的文件 或 文件名包含out的zip
文件
-o
:表示或find ./jmw_work_space/ -name "*.sh" -o -name "out*.zip"
⏹查找指定目录下 名称不包含address的文件,因为还使用了-type f
,所以不会匹配到文件夹
!
:取反find ./jmw_work_space/20240127 ! -name "address*.txt" -type f
d
:表示查找文件夹# 查找指定目录下的指定文件夹路径
find ./jmw_work_space/ -name "2024*" -type d
f
:表示查找文件,而不是文件夹find ./jmw_work_space/ -name "2024*" -type f
-size 0k
:查找大小为0k的文件/目录find ./jmw_work_space/ -size 0k -ls
-size +2M
:查找 > 2M 的文件/目录find ./jmw_work_space/ -size +2M | xargs ls -l
-size -2k
:查找 < 2k 的文件/目录find ./jmw_work_space/ -size -2k
-size +2k -size -10M
:2k < 大小 < 10Mfind ./jmw_work_space/ -size +2k -size -10M
⏹加上
-type f
,限定只查询文件
find ./jmw_work_space/ -size +2k -size -10M -type f
⏹查询指定大小的文件,并且限定文件名
find ./jmw_work_space/ -size +2k -size -10M -name "*.png"