• 根据文件类型或i节点搜索

  • 组合条件搜索

  • locate

  • which

  • grep

find

======================================================================

基本语法:find [搜索范围] [选项]

在这里插入图片描述

find命令是在Linux系统中用来进行文件搜索用的最多的命令,功能特别强大。但是尽量少用find命令去执行搜索任务,就算要搜索也应该尽量的缩小范围,也不要在服务器使用高峰期进行文件搜索,因为搜索也是很占系统资源的。这就在进行Linux文件整理的时候,尽量规范化,什么文件放在什么目录下都要有比较好的约定。

根据文件或目录名称搜索


find 【搜索目录】【-name或者-iname】【搜索字符】:-name和-iname的区别一个区分大小写,一个不区分大小写

  • ①、find /etc -name init (精准搜索,名字必须为 init 才能搜索的到)

  • ②、find /etc -iname init (精准搜索,名字必须为 init或者有字母大写也能搜索的到)

  • ③、find /etc -name *init (模糊搜索,以 init 结尾的文件或目录名)

  • ④、find /etc -name init??? (模糊搜索,? 表示单个字符,即搜索到 init___)

在这里插入图片描述

根据文件大小搜索


比如:在根目录下查找大于 100M 的文件

find / -size +204800

在这里插入图片描述

这里 +n 表示大于,-n 表示小于,n 表示等于

1 数据块 == 512 字节 ==0.5KB,也就是1KB等于2数据块

100MB == 102400KB==204800数据块

根据所有者和所属组搜索


  • ①、在home目录下查询所属组为 root 的文件

find /home -group root

*  ②、在home目录下查询所有者为 root 的文件

find /home -user root

在这里插入图片描述

根据时间属性搜索


find 【路径】【选项】【时间】

选项有下面三种:

  • -amin 访问时间

  • -cmin 文件属性被更改

  • -mmin 文件内容被修改

时间:+n,-n,n分别表示超过n分钟,n分钟以内和n分钟

范例:在 /etc 目录下查找5 分钟内被修改过属性的文件和目录

find /etc -cmin -5

根据文件类型或i节点搜索


  • -type 根据文件类型查找:f表示文件,d表示目录,l表示软链接

范例:查找 /home 目录下文件类型是目录的

find /home -type d

  • -inum 根据i节点查找

范例:查找 /tmp 目录下i节点为400342的文件或目录

find /tmp -inum 400342

在这里插入图片描述

组合条件搜索


这里有两个参数:

  • ①、-a 表示两个条件同时满足(and)

  • ②、-o 表示两个条件满足任意一个即可(or)

范例:查找/etc目录下大于80MB同时小于100MB的文件

find /etc -size +163840 -a -size -204800

locate

========================================================================

locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locatedb,这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。

语法:locate/slocate [选项] [参数]

选项:

  • -d<目录>或–database=<目录>:指定数据库所在的目录;

  • -u:更新slocate数据库;

  • –help:显示帮助;

  • –version:显示版本信息

参数:

查找字符串:要查找的文件名中含有的字符串。

范例:搜索etc目录下所有以sh开头的文件

locate /etc/sh

在这里插入图片描述

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
img

最后

Java架构进阶面试及知识点文档笔记

这份文档共498页,其中包括Java集合,并发编程,JVM,Dubbo,Redis,Spring全家桶,MySQL,Kafka等面试解析及知识点整理

image

Java分布式高级面试问题解析文档

其中都是包括分布式的面试问题解析,内容有分布式消息队列,Redis缓存,分库分表,微服务架构,分布式高可用,读写分离等等!

image

互联网Java程序员面试必备问题解析及文档学习笔记

image

Java架构进阶视频解析合集

一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!

AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算

wGGBVD-1712173883279)]

Java架构进阶视频解析合集

一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!

AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算

Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐