Linux find命令

参考资料

  1. 菜鸟教程-Linux find 命令
  2. Linux 中使用 find 命令查找文件
  3. linux find命令详解
  4. findコマンドの使い方を簡単に理解するための7つのルール+実践的な知識

目录

  • 一. 基本语法
    • 1.1 配置项
    • 1.2 常用动作
  • 二. -name 按照文件名查找
    • 2.1 按照文件名正则表达式查找
    • 2.2 逻辑运算符
      • 2.2.1 与 查找
      • 2.2.2 或 查找
      • 2.2.3 非 查找
  • 三. -type 按照类型查找
    • 3.1 查找文件夹路径
    • 3.2 查找文件路径
  • 四. -size 按照文件大小查找
    • 4.1 查找等于指定大小的文件/目录
    • 4.2 查找大于指定大小的文件/目录
    • 4.3 查找小于指定大小的文件/目录
    • 4.4 查找大小在指定范围之内的文件


一. 基本语法

find 指定目录 寻找条件 查完后执行的动作

1.1 配置项

配置项(简写) 说明
-name 按照文件名查找文件,不忽略大小写
-iname 按照文件名查找文件,忽略大小写
-type 按照文件类型查找文件
-size 按照文件大小查找
-perm 按照权限查找
-user 按照用户名查找

-type配置项的描述符

  • d:文件夹
  • f:普通文件
  • l:链接文件

-size配置项的描述符

  • c:字节
  • k:KB
  • M:MB
  • G:GB

1.2 常用动作

动作 说明
-exec 命令体 {} ; 对符合条件的文件执行所给的Linux 命令,而不询问用户是否需要执行该命令
命令的末尾必须以\;结束
-ls 详细列出所找到的所有文件
-print 在标准输出设备上显示查找出的文件名
xrags

二. -name 按照文件名查找

2.1 按照文件名正则表达式查找

⏹当查找后缀名为.sh的文件时,需要使用双引号包裹,否则查询无效

# 在当前目录的 jmw_work_space 文件夹下查找 后缀为 .sh 的文件
find ./jmw_work_space/ -name "*.sh"
find ./jmw_work_space/ -name *.zip

Linux find命令_第1张图片
⏹指定正则表达式

find ./jmw_work_space/ -name "20240[0-9]*.txt"

Linux find命令_第2张图片

2.2 逻辑运算符

2.2.1 与 查找

⏹查找文件名后缀为.sh 并且 所属用户为 root 的文件

find ./jmw_work_space/ -name "*.sh" -user root

Linux find命令_第3张图片

2.2.2 或 查找

⏹查找后缀名为.sh的文件 文件名包含out的zip文件

  • -o:表示或
find ./jmw_work_space/ -name "*.sh" -o -name "out*.zip"

在这里插入图片描述

2.2.3 非 查找

⏹查找指定目录下 名称不包含address的文件,因为还使用了-type f,所以不会匹配到文件夹

  • !:取反
find ./jmw_work_space/20240127 ! -name "address*.txt" -type f

Linux find命令_第4张图片


三. -type 按照类型查找

3.1 查找文件夹路径

  • d:表示查找文件夹
# 查找指定目录下的指定文件夹路径
find ./jmw_work_space/ -name "2024*" -type d

Linux find命令_第5张图片

3.2 查找文件路径

  • f:表示查找文件,而不是文件夹
find ./jmw_work_space/ -name "2024*" -type f

Linux find命令_第6张图片


四. -size 按照文件大小查找

4.1 查找等于指定大小的文件/目录

  • -size 0k:查找大小为0k的文件/目录
find ./jmw_work_space/ -size 0k -ls

Linux find命令_第7张图片

4.2 查找大于指定大小的文件/目录

  • -size +2M:查找 > 2M 的文件/目录
find ./jmw_work_space/ -size +2M | xargs ls -l

在这里插入图片描述

4.3 查找小于指定大小的文件/目录

  • -size -2k:查找 < 2k 的文件/目录
find ./jmw_work_space/ -size -2k

Linux find命令_第8张图片

4.4 查找大小在指定范围之内的文件

  • -size +2k -size -10M:2k < 大小 < 10M
  • 这样会查询出文件夹
find ./jmw_work_space/ -size +2k -size -10M

Linux find命令_第9张图片

⏹加上-type f,限定只查询文件

find ./jmw_work_space/ -size +2k -size -10M -type f

Linux find命令_第10张图片

⏹查询指定大小的文件,并且限定文件名

find ./jmw_work_space/ -size +2k -size -10M -name "*.png"

在这里插入图片描述

你可能感兴趣的:(Linux,linux)