Linux——查找文件-find(详细)

查找文件-find

 作用

- 按照文件名、大小、时间、权限、类型、所属者、所属组来搜索文件

格式

find  查找路径   查找条件  具体条件  操作

注意

- find命令默认的操作是print输出

- find是检索文件的,grep是过滤文件中字符串

 参数

参数                                                         作用                                                         

 -name                                       根据文件basename匹配名称                                     

 -size                                        匹配文件的大小(+50KB为查找超过50KB的文件,而-50KB为查找                                                            小于50KB的文件) 

 -mtime [+\|-]n                         匹配修改内容的时间(-4指小于等于4天内的文件名;+4,大于等于5                                                 天前的文件名;4指前4~5那一天的文件)

 -atime [+\|-]n                          匹配访问文件的时间                                           

 -ctime [+\|-]n                          匹配修改文件权限的时间                                       

 -newer f1 !f2                          匹配比文件f1新但比f2旧的文件                                 

 -perm                                     匹配权限(mode为完全匹配,-mode为包含即可)                  

 -user                                       匹配所有者                                                   

 -group                                     匹配所有组                                                   

 -nouser                                 匹配无所有者的文件                                           

 -nogroup                                匹配无所属组的文件                                           

 -type b/d/c/p/l/f                               匹配文件类型(后面的字母参数依次表示块设备、目录、字符                                                        设备、 管道、链接文件、文本文件)

 -depth                                               先从该目录子目录下查找,再查找该目录                         

 -maxdepth levels<br />-mindepth levels          最多查找多少层目录;最少查找多少层目录        

 -delete                                将找到的文件删除,如果是目录只能删除找到的空目录。   

       

 -exec …… {}\;                      后面可跟用于进一步处理搜索结果的命令      (类似于管道符)

                 

#### 示例

- 按照文件名搜索

  - -name: 按照文件名搜索

  - -iname: 按照文件名搜索,不区分文件名大小写

  - -inum: 按照 inode 号搜索

  - 没有那个文件或目录:find命令在执行时,在内存中自己产生的临时文件,执行完既消失

  - 注意:搜索位置越大,消耗系统资源越多,在生产服务器上搜索的时候,尽量不在根目录下搜索,把搜索的范围尽量控制在最小

```shell

# /目录下检索名为passwd的文件

[root@server ~]# find  /  -name  "passwd" -print

# /etc下检索host开头的文件

[root@server ~]# find /etc -name "host*" -print

# 在/目录查找以a开头文件

[root@server ~]# find  /  -name  "a*"

# 在/目录中查找以b开头的不区分大小写的文件

[root@server ~]# find / -iname "b"

# 在/etc目录下检索以b开头共4个字符的文件

[root@server ~]# find  /etc  -name  "b???"

# 在/etc目录下检索第二个字母为c的文件

[root@server ~]# find  /etc  -name  "?c*"

# /目录下检索扩展名为.cfg的文件

[root@server ~]# find  /  -name  "*.cfg"

# /目录下检索扩展名为.txt的文件并统计个数

[root@server ~]# find  /  -name  "*.txt"  |  wc  -l

- 按照文件大小搜索

  - -size [+|-]大小: 按照指定大小搜索文件,“+”的意思是搜索比指定大小还要大的文件, “-”的意思是搜索比指定大小还要小的文件  

  - 单位:可以通过man  find  查看size参数的单位

    ```

        #这是默认单位,如果单位为b或不写单位,则按照512 Byte搜索。

        ' b':for 512-byte blocks(this is the default if no suffix is used)

        

        #搜索单位是c,按照字节搜索。

        'c':for bytes

      

        #搜索单位是w,按照双字节(中文)搜索。

        'w':for two-byte words

     

        #按照KB单位搜索,必须是小写的k。

        'k':for Kilobytes(units of 1024 bytes)

     

        #按照MB单位搜索,必须是大写的M

        'M':for Megabytes(units of 1048576 bytes)

     

        #按照GB单位搜索,必须是大写的G

        ' G':for Gigabytes(units of 1073741824 bytes)

    ```

```bash

[root@master ~]# find / -size -1k

[root@master ~]# find  /   -size  +100M

[root@server ~]# find . -empty  # 空文件

```

- 按照修改时间搜索

  -  -atime [+|-]时间: 按照文件访问时间搜索

  - -mtime [+|-]时间: 按照文件数据修改时间搜索

  - -ctime [+|-]时间: 按照文件状态修改时间搜索

  - -newer file: 把比file修改时间更新的文件列出来

  - 注意:时间范围问题

    - -5:代表 5 天内修改的文件。

    - 5:代表前 5~6 天那一天修改的文件。

    - +5:代表 6 天前修改的文件。  

![image-20191227204132704](https://foxandy007.oss-cn-chengdu.aliyuncs.com/typora_img/findtime.jpg)

```bash

[root@master ~]# find  /  -mtime -10  -empty  10天以内的空文件

```

- 按照权限搜索

  - -perm   权限模式: 查找文件权限刚好等于“权限模式”的文件 ,常用

  - -perm   -权限模式: 查找文件权限全部包含“权限模式”的文件

  - -perm   +权限模式: 查找文件权限包含“权限模式”的任意一个权限的文件

  - 如果要在整个系统中搜索权限中包括SUID权限的所有文件,只需使用-4000即可:

```shell

[root@server ~]# find . perm  755

[root@server ~]# find / -perm -4000

```

- 按照所有者和所属组搜索  

  - -uid 用户 ID: 按照用户 ID 查找所有者是指定 ID 的文件

  - -gid 组 ID: 按照用户组 ID 查找所属组是指定 ID 的文件

  - -user 用户名: 按照用户名查找所有者是指定用户的文件

  - -group 组名: 按照组名查找所属组是指定用户组的文件

  - -nouser: 查找没有所有者的文件 ,常用,主要用于查找垃圾文件,还有一种情况就是外来

文件,比如光盘和U盘中的文件如果是由Windows复制来的(也就是文件是由windows建立的),在Linux中查看就是没有所有者的文件;再比如手工源码包安装的文件,也有可能没有所有者(由其他系统打的源码包)

```bash

[root@server ~]#  find . -user root

[root@server ~]#  find  / -nouser   # 查看无所有者的文件

```

- 按照文件类型搜索

  -  -type d: 查找目录

  - -type f: 查找普通文件

  - -type l: 查找软链接文件

  - ……

```bash

[root@server ~]# find  /dev  -type  b

[root@server ~]# find  ~  -type  d

[root@server ~]# find  /dev  -type  c  -size  -10k

```

-a可以省略   代表并且

-o 代表或 不可以省略

查找以d开头,归属于root的账户文件

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/38151.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity海面效果——4、法线贴图和高光

Unity引擎制作海面效果 大家好&#xff0c;我是阿赵。 继续做海面效果&#xff0c;上次做完了漫反射颜色和水波动画&#xff0c;这次来做法线和高光效果。 一、 高光的计算 之前介绍过高光的光照模型做法&#xff0c;比较常用的是Blinn-Phong 所以我这里也稍微连线实现了一下 …

API 授权最佳实践

API&#xff08;应用程序编程接口&#xff09;就像秘密之门&#xff0c;允许不同的软件程序进行通信。但并不是每个人都应该拥有每扇门的钥匙&#xff0c;就像不是每个软件都应该不受限制地访问每个 API 一样。 这些 API 将从银行的移动应用程序到您最喜欢的社交媒体平台的所有…

某智能装备公司如何实现多个工程师共用1台图形工作站

在当今快速发展的科技领域&#xff0c;资源共享和高效利用已成为企业提升竞争力的关键&#xff0c;特别是在工程设计和研发领域。如何最大化地利用有限的资源&#xff0c;如工作站&#xff0c;成为了许多公司面临的挑战。某智能装备公司便是在这样的背景下&#xff0c;通过云飞…

【自动驾驶汽车通讯协议】深入理解PCI Express(PCIe)技术

文章目录 0. 前言1. PCIe简介1.1 PCIe外观1.2 PCIe的技术迭代 2. PCIe的通道&#xff08;lane&#xff09;配置2.1 通道配置详解2.2 通道配置的影响 3. PCIe的架构3.1 架构层次3.2 核心组件 4. PCIe的特性5. PCIe在自动驾驶中的应用 0. 前言 按照国际惯例&#xff0c;首先声明&…

【产品运营】Saas的核心六大数据

国内头部软件公司的一季度表现惨不忍睹&#xff0c;为啥美国的还那么赚钱呢&#xff1f;其实核心是&#xff0c;没几个Saas产品经理是看数据的&#xff0c;也不知道看啥数据。 SaaS 行业&#xff0c;天天抛头露面、名头叫的响的 SaaS 产品&#xff0c;真没有几个赚钱的。 那为…

电子看板,帮助工厂实现数字化管理

在数字化浪潮的推动下&#xff0c;制造业正经历着深刻的变革&#xff0c;数字工厂成为了行业发展的新趋势。而生产管理看板作为一种重要的管理工具&#xff0c;在提升数字工厂管理效率方面发挥着关键作用。 生产管理看板通过实时数据的展示&#xff0c;为数字工厂提供了清晰的全…

【算法学习】射线法判断点在多边形内外(C#)以及确定内外两点连线与边界的交点

1.前言&#xff1a; 在GIS开发中&#xff0c;经常会遇到确定一个坐标点是否在一块区域的内部这一问题。 如果这个问题不是一个单纯的数学问题&#xff0c;例如&#xff1a;在判断DEM、二维图像像素点、3D点云点等含有自身特征信息的这些点是否在一个区域范围内部的时候&#x…

基于uniapp(vue3)H5附件上传组件,可限制文件大小

代码&#xff1a; <template><view class"upload-file"><text>最多上传5份附件&#xff0c;需小于50M</text><view class"" click"selectFile">上传</view></view><view class"list" v…

CCAA:认证通用基础 10(审核的概念、审核有关的术语、审核的特征、审核原则)

10.审核的概念、审核有关的术语、审核的特征、审核原则 10.1审核的基本概念 第一章 审核基础知识 第一节 概述 1.什么是审核 审核是认证过程中最基本的活动&#xff0c;是审核方案的重要组成部分&#xff0c;其实施效果直接影响到审核方案的意图和审核目标的达成。 在认证…

外贸企业选择什么网络?

随着全球化的深入发展&#xff0c;越来越多的国内企业将市场拓展到海外。为了确保外贸业务的顺利进行&#xff0c;企业需要建立一个稳定、安全且高速的网络。那么&#xff0c;外贸企业应该选择哪种网络呢&#xff1f;本文将为您详细介绍。 外贸企业应选择什么网络&#xff1f; …

VehicleSPY的安装与使用

VehicleSPY介绍 Vehicle Spy 是美国英特佩斯公司的一款集成了诊断、节点/ECU仿真、数据获取、自动测试和车内通信网络监控等功能的工具&#xff0c;Vehicle Spy软件支持的应用场景很多&#xff0c;无法一一列举&#xff0c;以下是一些常见的应用&#xff1a; 总线监控&#x…

stthjpv:一款针对JWT Payload的安全保护工具

关于stthjpv stthjpv是一款针对JWT Payload的安全保护工具&#xff0c;这款工具集多种技术和思想于一身&#xff0c;可以通过不断改变相关参数值来防止Payload被解码&#xff0c;以帮助广大研究人员更好地保护JWT Payload的安全性。 除此之外&#xff0c;该工具还能够确保JWT …

如何定制化 ListView 界面

&#x1f604;作者简介&#xff1a; 小曾同学.com,一个致力于测试开发的博主⛽️&#xff0c;主要职责&#xff1a;测试开发、CI/CD 如果文章知识点有错误的地方&#xff0c;还请大家指正&#xff0c;让我们一起学习&#xff0c;一起进步。 &#x1f60a; 座右铭&#xff1a;不…

代码查重软件-自力更生

为了减轻工作量&#xff0c;自研了简单实用的代码查重工具&#xff0c;可以对若干文件之间进行查重。通过调试&#xff0c;相似度大于80%的没有一个是冤枉的。好用。去掉雷同的&#xff0c;其他的代码再慢慢看。

Java UU跑腿同城跑腿小程序源码快递代取帮买帮送源码小程序+H5+公众号跑腿系统

&#x1f680;【同城生活小助手】&#x1f680; &#x1f3c3;‍♂️【同城跑腿&#xff0c;即刻送达的便利生活】&#x1f3c3;‍♀️ 在快节奏的都市生活中&#xff0c;时间成了最宝贵的资源。UU跑腿小程序&#xff0c;作为同城生活的得力助手&#xff0c;让你轻松解决生活…

​如何部署私有化地图服务器(Windows版)

用户希望我们能详细讲讲&#xff0c;如何通过《水经注地图服务》进行私有化部署做一个地图服务器。 现在就来为大家作一个较为详细的分享&#xff0c;希望能在私有化部署地图服务器的工作中&#xff0c;助你一臂之力&#xff01; 《水经注地图服务》下载与安装 打开以下官方…

从深度学习到音乐创作:AI如何重新定义音乐行业

&#x1f4d1;引言 近一个月来&#xff0c;随着几款音乐大模型的轮番上线&#xff0c;AI在音乐产业的角色迅速扩大。这些模型不仅将音乐创作的门槛降至前所未有的低点&#xff0c;还引发了一场关于AI是否会彻底颠覆音乐行业的激烈讨论。从初期的兴奋到现在的理性审视&#xff0…

IO模型与多路复用

前言 在Linux中有一句经典台词&#xff1a;“Linux一切皆文件”。IO操作是与文件进行交流的唯一方式&#xff0c;也就是说这是与Linux系统交流的唯一手段。就如同人与人之间的交流&#xff0c;如果我们连交流的方式都不甚了解&#xff0c;交流的效率就会变得低下。操作系统也是…

机械设备制造企业MES系统解决方案介绍

机械设备制造行业涵盖了各类工业设备、工程机械、农业机械等多个领域&#xff0c;对生产精度、质量控制和效率提出了较高要求。为了提升生产效率、保证产品质量并满足客户需求&#xff0c;越来越多的机械设备制造企业引入了MES系统。本文将详细介绍MES系统在机械设备制造行业的…

CPPTest设计分析

目录 1 概述2 设计3 扩展Output3.1 扩展实例 1 概述 CppTest是一个可移植、功能强大但简单的单元测试框架&#xff0c;用于处理C中的自动化测试。重点在于可用性和可扩展性。支持多种输出格式&#xff0c;并且可以轻松添加新的输出格式。 CppTest下载地址Sourceforge Github地…