在Liunx中,find命令和locate的区别

1. find 命令

  1. 工作原理find命令直接在文件系统中遍历目录结构,实时查找符合特定条件的文件或目录。这意味着它会逐个检查文件系统的实际内容,因此查找过程可能会比较慢,尤其是当搜索大型文件系统或使用复杂条件时。

  2. 灵活性find提供了极其丰富的搜索条件,可以基于文件名、大小、修改时间、权限等多种属性进行过滤。你可以构造复杂的逻辑表达式来精确匹配目标文件。

  3. 实时性:由于find是实时搜索,它能找到最新创建或修改的文件,即使这些更改还没有被索引。

  4. 命令示例

    • 查找当前目录及其子目录下所有.txt文件:find . -name "*.txt"
    • 查找过去24小时内修改过的文件:find . -mtime -1

2. locate 命令

  1. 工作原理locate命令依赖于一个预先建立的文件索引数据库(通常是通过updatedb命令定期更新的),它不直接在文件系统中搜索。当你运行locate时,它直接查询这个数据库来迅速找到文件的位置。因此,locate的搜索速度极快,几乎瞬间返回结果。

  2. 效率:由于使用了索引,locate的查找速度远超find,特别是在查找已知路径或名称的文件时。

  3. 局限性:由于依赖于索引数据库,locate可能找不到最近创建或修改的文件,直到下次数据库更新。此外,它不支持像find那样复杂的搜索条件。

  4. 命令示例

    • 查找名为example.txt的文件:locate example.txt
    • 安全模式下查找(考虑到权限问题):locate -e example.txt

3. 总结

  • 速度与实时性locate因使用索引而非常快,但可能不反映最新的文件系统状态;find实时搜索,慢但准确反映当前文件系统状态。
  • 搜索条件find提供更复杂的搜索条件,支持按多种属性筛选;locate主要基于文件名进行快速查找。
  • 适用场景:如果你需要快速找到一个确切知道名称的文件,且不介意索引可能稍有延迟,locate是首选。如果需要进行复杂的搜索,或查找的文件可能刚刚被创建或修改,那么应该使用find
liunx 全盘查找_linux总结之find搜索文件(times 3) 个人原创,转自请在文章头部显眼位置注明出处:https://www.cnblogs.com/sunshine5683/p/10091341.htmlfind命令的各种搜索一、根据文件名进行查找命令find [路径,其中/表示根目录搜索,即全盘搜索] -name [文件名]实例: 二、根据文件大小进行查询命令find /etc size +2048 (查找大于100M的文件,注意大于:+... 阅读详情

相关推荐

linux中find命令详解,Linux下的find指令详解

在Linux下有很多查找指令:locatewhereiswhichfind在这些查找指令中功能最强大的当属find指令了。find命令在目录结构中搜索文件,并执行指定的操作。Linux下find命令提供了相当多的查找条件,功能很强大。即使系统中含有网络文件系统,find命令在该文件系统中同样有效。所以在本片博客中主要讨论find命令。(一)find命令的格式:find 路径 -命令参数 [输出形式...

weixin_42297727的博客 7823

二、linux find命令详解

主要介绍了find的用法、参数及用法举例;包含常见的options、根据时间戳查找文件、对查找到的文件执行操作等

m0_53741670的博客 3053

find 命令详解(2)

find命令   功能:在目录结构中搜索文件,并执行指定的操作。此命令提供了相当多的查找条件,功能很强大。   语法:find 起始目录 寻找条件 操作   说明:find命令从指定的起始目录开始,递归地搜索其各个子目录,查找满足寻找条件的文件并对之采取相关的操作。   该命令提供的寻找条件可以是一个用逻辑运算符not、and、or组成的复合条件。逻辑运算符and、or、not的含义为:   

小兵的专栏 1252

Linux中find命令用法大全

以上就是30个linux下find命令大全,希望对大家有用,另外,欢迎大家指出错误及补充。

清瞳清的博客 2万+

linux 命令 which whereis locate find

find,遍历硬盘查找,通常使用 find / -name Filename。耗内存。locatewhereis是根据数据库查找,无法实时查找文件。有可能找到刚才删除的文件无法找到新增的文件。which根据path找可执行文件。whereis 可以用来找相关安装路径二进制文件,可执行文件。当我们用whereislocate无法查找到我们需要的文件时,可以使用find,但是find是在硬盘上遍历查 找,因此非常消耗硬盘的资源,而且效率也非常低,因此建议大家优先使用whereislocate

fenglepeng的博客 545

Liunx find/locate/whereis/which 总结

一、locate 命令 是一个文件查找命令命令所属软件包 mlocate 不同于 find 命令的是,find命令在整块磁盘中搜索;而 locate命令 在数据路库文件中搜索,当天创建的文件第二天才会被定时任务处理,添加到数据库文件中。 find 命令默认是 精准匹配文件名;locate是模糊匹配(包括匹配目录名) 如果想将当前创建的文件立即添加到 数据库文件中,那么就...

139

Liunx操作系统——Linux文件目录管理的相关命令整理

本文为大家介绍了Linux文件目录管理,希望对你有帮助~~

weixin_53919192的博客 1005

Liunx文件查找find与压缩tar

文件系统详解 软连接ln -s 硬链接只能对文件用,对目录不能用;

benziwu的博客 669

liunx的which命令

我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索: which查看可执行文件的位置。 whereis查看文件的位置。 locate配合数据库查看文件位置。 find实际搜寻硬盘查询文件名称。 which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。 1...

dhq_blog的博客 137

linux下which、whereis、locatefind命令详解

原文链接: 1、http://312788172.javaeye.com/blog/730280 2、http://www.javaeye.com/topic/406709 linux下which、whereis、locatefind 命令区别 文章分类:操作系统 我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索。这些是从网上...

weixin_34318272的博客 145

liunx 全盘查找_Linux下文件搜索、查找、查看命令

Linux下文件搜索、查找、查看命令1、最强大的搜索命令find 查找各种文件的命令2、在文件资料中查找文件:locate3、搜索命令所在的目录及别名信息:which4、搜索命令所在的目录及帮助文档路径:whereis5、在文件中搜寻字符串匹配的行并输出:grep6、分页显示一个文件或任何输出结果:more7、分页显示一个文件并且可以回头:less8、指定显示前多少行文件内容:head9、指定显...

weixin_39628945的博客 1273

Linux :file、which 、whereis、locatefind

1 file 观察文件类型 file 文件 2 which 寻找文件 选项与参数: -a : 将所有由PATH目录中可以知道的指令列出,而不止一个被找到的指令名称 3 whereis 寻找特定文件 选项及参数: -b : 只找binary格式的文件 -m : 只找在说明文件manual路径下的文件 -s : 只找source来源文件 -u:寻找不在上述三个项目中的...

weixin_34289744的博客 116

liunx 全盘查找_Linux常用文件搜索命令

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

weixin_33335851的博客 1114

Linux命令学习

在我们输入命令时前面会有这么一句话:shi@DESKTOP-RS264UT:~$ 这是什么意思呢?shi -> 当前用户名@ -> 机器标号DESKTOP-RS264UT -> 当前的主机名: -> 分隔符~ -> 当前工作路径(简化为~)$ -> 普通用户 #->超级用户root@DESKTOP-RS264UT:/home/shi#这个就是超级用户下的前缀。shi@DESKTOP-RS264UT:~$普通用户前缀。

weixin_49038319的博客 1662

linux find -mtime_Linux 中搜索命令大总结

1、whereiswhereis 是搜索系统命令命令,也就是说 whereis 不能搜索普通文件,只能搜索系统命令2、whichwhich 也是搜索系统命令命令 whereis 命令区别在于,如果这个命令有别名,则还可以找到别名3、locate可以按照文件名搜索文件优点:按照数据库搜索,搜索速度快,消耗资源小。数据库位置:/var/lib/mlocate/mlocate.db缺点:只能按照...

weixin_39772651的博客 359

【Linux】文件搜索命令find/which/whereis/grep/locate的用法/关机重启命令

码农印象 853

liunx 全盘查找_Linux系列教程(六)——Linux常用命令之文件搜索命令

前一篇博客我们讲解了Linux链接命令权限管理命令,通过 ln -s 链接名 表示创建软链接,不加-s表示创建硬链接;还有三个更改权限的命令,chmod命令可以更改文件或目录权限,chown命令可以改变文件或目录所有者,chgrp命令可以改变文件或目录所属组。但是大家需要注意的是,后面两个命令只能由root用户来完成,而chmod命令除了root用户能完成,还有所更改文件或目录的所有者。那么...

weixin_34653651的博客 414

linux常用查找命令详解

一.which命令注意: 1.只能查找可执行文件,就是要具有x这个权限的文件 2.只能在系统环境变量PATH的指定路径中查找对于1来说,可以修改权限达到能查找的目的。对于2来说可以另外添加一个环境变量路径或者把可执行文件放到系统环境变量的路径中去。例子:1).移到文件到系统环境变量目录下 2).修改系统环境变量中的PATH路径a.查看环境变量b.修改PATH路径该文件的路径:/root/.ba

_ACME_的博客 1041

linux常用命令搜索,Linux学习之——Linux常用命令(三):文件搜索命令

文件搜索命令:which:语法: which [命令名称]它只能查找命令所在的目录或者说路径,不能查找其他的。位于sbin,则是管理员所用命令位于bin,则是所有的用户都能使用命令功能描述:显示系统命令所在目录(绝对路径),会显示出命令相关的别名。以便判断命令类型范例:$which lswhereis:语法:whereis [ 命令名称 ]功能描述:找到命令所在目录(也是绝对路径),会显示命令帮助...

weixin_39869733的博客 169
上一篇: 计算机网络基础
下一篇: Python入门与基本语法
豪ㄘ
博客等级 码龄3年 215粉丝 · 10原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值