参考链接:https://mp.weixin.qq.com/s/y8LeZ0-9D56TWsD-ivPaHQ

一.按文件名称查找

按照文件名称查找是 find 最常见的用法,需要注意的是,搜索的文件名必须完全匹配,才能找到对应的文件。

  1.查找当前目录下所有的 java文件

  find . -name '*.java'

  2.在 etc目录下 ,查找大写字母开头的txt文件

  find /etc -name "[A-Z]*.txt" -print

   在etc目录下,查找小写字母开头的log文件

  find /etc -name "[a-z]*.log" -print

  3.在当前目录下查找不是out开头的txt文件

  find . -name "out*" -prune -o -name "*.txt" -print

  4.在当前目录除git子目录外查找txt文件

  find . -path "./git" -prune -o -name "*.txt" -print

二.按文件类型查找

  1.在当前目录下,查找软连接文件

  find . -type l -print

  2.在当前目录下,查找log结尾的普通文件,f 表示普通文件类型

  find . -type f -name "*.log"

 

三.按文件大小查找

  1.查找小于60K的文件

  find . -size -64k -print

  2.查找大小超过200M的文件

  find . -size +200M -type f -print

四.按时间查找

  1.查找2天内被修改过的文件

  find . -mtime -2 -type f -print

  2.查找 2 天前被更改过的文件,-mtime 表示内容修改时间

  find . -mtime +2 -type f -print

  3.查找一天内被访问的文件,-atime 表示访问时间

  find . -atime -1 -type f -print

  4.查找一天内状态被改变的文件,-ctime 表示元数据被变化时间

  find . -ctime -1 -type f -print

  5.查找比 chopin.txt 新的文件

   find . -newer "chopin.txt" -type f -print
   find . ! -newer "chopin.txt" -type f -print # 旧

 

五.总结归纳

find 命令是 Linux 命令中最有用的命令之一,它的功能非常强大,且语法复杂。其实我们不一定需要了解它的所有细节,掌握上述实战案例中的常见用法,足够满足日常工作中的大部分需求。

下边我们一起来总结下 find 命令常见用法,加深对 find 使用方法的理解。

命令格式

  find path -option [-exec ...]

按文件名查找

  • -name:按照文件名称查找,准确匹配;
  • -iname:不区分文件名的大小写;
  • -inode:按照文件 inode 号查找

按照文件类型查找

 按照文件类型查找,可以使用 -type 选项,具体支持的文件类型如下:

  • f:普通文件
  • d:目录文件
  • l:链接文件
  • s:套接字文件
  • p:管道文件
  • b:块设备文件,比如:磁盘
  • c:字符设备文件,比如:键盘、鼠标、网卡

按照文件从属关系查找

  • -user:以用户名查找
  • -group:以组名查找
  • -uid:以用户 ID 查找
  • -gid:以组 ID 查找
  • -nouser:查找没有属主的文件
  • -nogroup:查找没有属组的文件

按照文件大小查找

按照文件大小查找功能十分常用,用 -size 选项,选项后边指定大小 1024M,表示大小的格式有如下几种:

  • -5M:查找小于 5M 的文件
  • +5M:查找大于 5M 的文件
  • 5M:查找大小为 5M 的文件

 单位支持的有 c(字节)kMG 等,需要注意的是默认单位并不是字节,而是b,大小为 512 字节。

【find】linux文件搜索命令find/locate的更多相关文章

  1. Linux的文件搜索命令(locate ,find,grep,find命令和)

    刚开始学Linux,这是关于Linux文件搜索命令,就目前,尽我所能把他写全一点,后期随时补充 文件搜索命令 一.locate命令 二.find命令 三.grep命令 四.find命令和grep命令的 ...

  2. Linux文件搜索命令

    文件搜索命令:locate locate 文件名 在后台数据库中按文件名搜索,搜索速度很快(比find命令要快得多) locate命令所搜索的后台数据库的位置:/var/bin/mlocate 支持模 ...

  3. Linux 文件搜索命令:find、which、whereis 和 locate

    Linux 提供了许多用于文件搜索的命令,这些命令都很强大,但是也有一些不同之处,这里分别介绍一下. 一.find 命令 find 是最常见和最强大的一个文件搜索命令.使用 find 命令可以在指定目 ...

  4. Linux系列教程(六)——Linux文件搜索命令

    前一篇博客我们讲解了Linux链接命令和权限管理命令, 通过 ln -s  链接名 表示创建软链接,不加-s表示创建硬链接:还有三个更改权限的命令,chmod命令可以更改文件或目录权限,chown命令 ...

  5. Linux —— 文件搜索命令

    文件搜索命令(配置文件/etc/updatedb.conf) locate 文件名 搜索速度非常快 在后台数据库中按照文件名搜索 updatedb 更新数据库 只可以按照文件名搜索 whereis 命 ...

  6. linux 文件搜索命令find、-name、-iname、通配符*?、-size、-user、-group、-amin、-cmin、-mmin、-a、-o、-exec/-ok、-inum

    尽可能规划好目录结构,少用文件搜索操作,因为它会占用大量的系统资源 find /bin/find find [搜索范围] [匹配条件] find /etc -name initfind /etc -n ...

  7. linux 文件搜索命令locate及updatedb

    windows 搜索工具Everything是根据NTFS日志来搜索的,所以速度特别快 locate 类似于windows的Everything,搜索速度比较快 如果没有locate命令,可安装 yu ...

  8. Linux文件搜索命令locate、which、grep详解

    命令locate详解 命令locate,其基本功能是在文件资料库中可以快速的搜索系统文件,占用系统资源很少,例如:locate my.cnf 还可以使用locate -i [文件名],不区分大小写进行 ...

  9. Linux——文件搜索命令简单笔记

    一: 命令名称:which 命令所在路径:/usr/bin/which 执行权限:所有用户 功能描述:显示系统命令所在目录 范例:$ which ls 还有一个whereeis ls 命令 二: 命令 ...

随机推荐

  1. Java获取微信公众号新增用户事件

    一.新建项目工程 新建一个spring项目 填写 Group 和 Artifact 信息 这步可以直接跳过,后面再按需导入 选择工程地址 二.配置 pom.xml <dependencies&g ...

  2. 线上MySQL读写分离,出现写完读不到问题如何解决

    大家好,我是历小冰. 今天我们来详细了解一下主从同步延迟时读写分离发生写后读不到的问题,依次讲解问题出现的原因,解决策略以及 Sharding-jdbc.MyCat 和 MaxScale 等开源数据库 ...

  3. 部署Angular应用到Github pages

    https://jeneser.github.io/blog/2017/08/08/angular-deploying-app-github-pages/ Published: August 08, ...

  4. x86汇编 条件跳转

    条件跳转表 汇编语言-条件跳转指令 直接转移指令 指令格式 机器码 测试标志 条件说明 符号  JO       OPR 70  OF=1  结果有溢出    JNO      OPR 71  OF= ...

  5. java集合【12】——— ArrayList,LinkedList,Vector的相同点与区别是什么?

    目录 特性列举 底层存储结构不同 线程安全性不同 默认的大小不同 扩容机制 迭代器 增删改查的效率 总结一下 要想回答这个问题,可以先把各种都讲特性,然后再从底层存储结构,线程安全,默认大小,扩容机制 ...

  6. Android Studio 待看博文

    •前言 学习过程中找到的一些好的博文,有些可能当时就看完了并解决了我的问题,有些可能需要好几天的事件才能消化. 特此记录,方便查阅. •CSDN 给新人的一些基础常识 TextView的文字长度测量及 ...

  7. 庐山真面目之十二微服务架构基于Docker搭建Consul集群、Ocelot网关集群和IdentityServer版本实现

    庐山真面目之十二微服务架构基于Docker搭建Consul集群.Ocelot网关集群和IdentityServer版本实现 一.简介      在第七篇文章<庐山真面目之七微服务架构Consul ...

  8. [GDKOI2021] 提高组 Day 2 总结

    [ G D K O I 2021 ]    提 高 组    D a y   2    总 结 不明的感觉今天的题比昨天的简单些,感觉今天爆炸的可能性很低. 嗯,于是乎,就很自信地打完了比赛.然后下午 ...

  9. [树形DP]电子眼

    电 子 眼 电子眼 电子眼 题目描述 中山市石一个环境优美.气候宜人的小城市.因为城市的交通并不繁忙,市内的道路网很稀疏.准确地说,中山市有N-1条马路和N个路口,每条马路连接两个路口,每两个路口之间 ...

  10. Recoil 默认值及数据级联的使用

    Recoil 中默认值及数据间的依赖 通过 Atom 可方便地设置数据的默认值, const fontSizeState = atom({ key: 'fontSizeState', default: ...