find 命令全集

Find命令全集

简介

find命令是 Linux 系统中的一款基于目录文件查找的命令。它可以查找指定目录下符合指定条件的文件或目录,并对这些文件或目录进行相应的操作。

find命令非常强大,提供了很多可选参数,支持使用通配符进行模糊匹配,还可以使用用户自定义的过滤条件。find命令可以查找文件、目录,甚至可以查找符号链接、设备文件等。

命令格式

find命令的基本格式如下:

find [寻找路径] [选项和参数] [匹配条件]
  • [寻找路径]:指定查找的起始目录,可以是相对路径和绝对路径。如果不指定,则默认从当前目录开始查找。
  • [选项和参数]:用于指定一些操作和过滤条件,比如:-type-mtime-mtime +7-name等选项。
  • [匹配条件]:具体的过滤规则,用于匹配文件名、文件类型、文件大小、修改时间等信息。

常用选项和参数

以下是find命令中常用的选项和参数:

  • -name pattern:根据文件名进行模糊匹配。

    例如,查找/etc目录下所有以.conf结尾的文件:

    find /etc -name "*.conf"

  • -type [bcdpfls]:根据文件类型进行匹配。该选项后面紧跟的字符表示文件类型,取值范围如下:

    • b:块设备文件(如硬盘、光驱等)。
    • c:字符设备文件(如键盘、鼠标等)。
    • d:目录文件。
    • p:命名管道。
    • f:普通文件。
    • l:符号链接。
    • s:套接字文件。

    例如,查找/目录下所有普通文件:

    find / -type f

  • -mtime n:根据文件修改时间进行匹配。该选项后面紧跟一个数字n,表示距今n天内修改过的文件。

    例如,查找/目录下距今7天内修改过的文件:

    find / -mtime -7

  • -size [+|-]n[b|c|w|k|M|G]:根据文件大小进行匹配。+表示文件大小大于等于指定值,-表示文件大小小于等于指定值,b表示以字节为单位,c表示以字节为块,w表示以 2 字节为块,k表示以 1024 字节(1KB)为块,M表示以 MB 为单位,G表示以 GB 为单位。

    例如,查找/目录下大小超过1GB的文件:

    find / -type f -size +1G

  • -empty:查找空文件或空目录。

    例如,查找/var目录下所有空目录:

    find /var -type d -empty

  • -user user_name:根据所有者进行匹配。

    例如,查找/home目录下所有属于 user1 所有的文件:

    find /home -user user1

  • -group group_name:根据所属组进行匹配。

    例如,查找/home目录下所有属于 group1 所有的文件:

    find /home -group group1

  • -perm mode:根据文件权限进行匹配。例如:

    • -perm 777:查找文件权限为 777 的文件。
    • -perm -777:查找文件权限包含 777 的文件。
    • -perm /777:查找文件权限包含 777 的文件,但不包括权限恰好为 777 的文件。
  • -maxdepth n:指定最大搜索深度,避免递归搜索过多的子目录。

    例如,查找/etc目录下最大深度为 1 的所有文件和文件夹:

    find /etc -maxdepth 1

示例

示例一

查找/home目录下修改时间距今 30 天以内,属于user1用户的所有.txt.log文件。

find /home -type f \( -name "*.txt" -o -name "*.log" \) -mtime -30 -user user1

该命令说明:

  • -type f:查找文件。
  • \( -name "*.txt" -o -name "*.log" \):使用圆括号括起来的两个-name条件表示查找文件名满足以.txt结尾或者以.log结尾的文件。
  • -mtime -30:查找文件修改时间距现在不超过30天的文件。
  • -user user1:查找文件所有者是user1的文件。

示例二

查找/var目录下大小超过 1GB,修改时间在 3 天以内,属于www用户的所有日志文件,同时将找到的文件使用tar打包。

find /var -type f -size +1G -mtime -3 -user www -name "*.log" -exec tar -czf logs.tar.gz {} +

该命令说明:

  • -size +1G:查找文件大小超过 1GB 的文件。
  • -mtime -3:查找文件修改时间距现在不超过 3 天的文件。
  • -user www:查找文件所有者是www用户的文件。
  • -name "*.log":查找符合文件名为以.log结尾的文件。
  • -exec tar -czf logs.tar.gz {} +:对找到的文件进行打包操作,其中{}表示查找到的文件名,+表示一次性将查找到的所有文件打包起来,避免每个文件都打包一次。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:find 命令全集 - Python技术站

(0)
上一篇 2023年6月27日
下一篇 2023年6月27日

相关文章

  • windows11怎么显示文件后缀名? win11显示后缀名的两种方法

    在Windows 11中,你可以通过以下两种方法来显示文件的后缀名: 方法一:使用文件资源管理器 打开文件资源管理器。你可以通过点击任务栏上的文件夹图标或者按下Win + E快捷键来打开。 在文件资源管理器中,点击顶部菜单栏的\”查看\”选项。 在\”查看\”选项卡中,找到\”文件名扩展名\”这一栏。 确保\”文件名扩展名\”的复选框是选中状态。如果没有选中…

    other 2023年8月5日
    00
  • php经验——phpdocphp注释的标准文档(翻译自wiki)

    以下是PHP经验——PHPDoc PHP注释的标准文档的完整攻略,包括两个示例说明。 1. PHPDoc PHP注释 PHPDoc是一种用于为PHP代码生成文档的注释格式。PHPDoc注释可以包含有关函数、类、属性和参数的信息,以及其他有用的信息,如作者、版本和许可证。 2. 标准文档 以下是PHPDoc PHP注释的标准文档: 2.1 函数注释 /** *…

    other 2023年5月9日
    00
  • 电脑数字键打不出数字怎么版 电脑小键盘数字键不能用的解决方法

    电脑数字键打不出数字怎么办 电脑小键盘数字键不能用的解决方法 电脑键盘数字键无法使用是一个常见的问题,但通常可以通过以下方法来解决: 解决方法一:检查小键盘是否开启 一些笔记本电脑可能没有小键盘,在这种情况下,只能使用主键盘靠近字母区的数字键。对于那些有小键盘的电脑,当你按下“Num Lock”键时小键盘会开启,而数字键就可以正常工作。如果你发现小键盘无法正…

    other 2023年6月27日
    00
  • 微信小程序实现循环嵌套数据选择

    type: Array, value: [], }, }, methods: { handleChange(e) { const { value } = e.detail; const selectedItem = this.data.data[value]; const { children } = selectedItem; if (children &…

    other 2023年7月27日
    00
  • C++封装成DLL并调用的实现

    封装C++为DLL并调用的实现过程可以分为以下几个步骤: 1. 编写C++代码并封装为DLL 首先,需要编写C++代码。在Visual Studio下,可以新建一个Class Library项目,然后在其中编写相应的C++代码。一般而言,需要在.h文件中定义类和函数的接口,在.cpp文件中实现具体的逻辑。 封装为DLL需要在项目属性中进行设置。在项目属性的配…

    other 2023年6月25日
    00
  • Python实现扩展内置类型的方法分析

    Python是一门灵活而强大的编程语言,它提供了一系列内置类型来支持通用的编程需求,如列表,字符串和字典等。同时,Python也允许开发者通过扩展内置类型的方式来满足特定的业务需求。 本文将介绍如何通过Python实现扩展内置类型的方法,以下是详细步骤: 步骤一:确定需要扩展的内置类型 首先,我们需要确定我们要扩展的内置类型。Python支持很多内置类型,如…

    other 2023年6月26日
    00
  • 讲解C++中的枚举类型以及声明新类型的方法

    讲解C++中的枚举类型以及声明新类型的方法 在C++中,枚举类型是一种用于定义一组命名常量的数据类型。它允许我们为一组相关的值分配有意义的名称,使代码更易读和维护。下面是关于如何声明和使用枚举类型的详细攻略。 声明枚举类型 要声明一个枚举类型,可以使用enum关键字,后跟枚举类型的名称和一对花括号,其中包含枚举常量的列表。每个枚举常量都由一个名称和一个可选的…

    other 2023年8月16日
    00
  • cad构造线怎么使用? CAD利用构造线平分夹角的教程

    CAD构造线的使用攻略 CAD软件中的构造线是一种用于辅助绘图和设计的工具,可以用来平分夹角、定位点位、创建对称图形等。下面是使用CAD构造线的详细攻略,包含两个示例说明。 1. 平分夹角 平分夹角是CAD中常见的操作,可以通过构造线来实现。以下是平分夹角的步骤: 打开CAD软件并创建一个新的绘图文件。 绘制两条线段,表示待平分的夹角。 选择“构造线”工具,…

    other 2023年8月6日
    00
合作推广
合作推广
分享本页
返回顶部