Linux命令手册-通过文件名查找文件(find、which、locate)(详解)

这篇具有很好参考价值的文章主要介绍了Linux命令手册-通过文件名查找文件(find、which、locate)(详解)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、find命令

1、语法格式

2、选项说明

3、命令示范

二、which命令

1、语法格式

2、命令示范

三、locate命令

1、语法格式

2、命令示范:


一、find命令

find命令在Linux中作为文件查找使用频次很高,主要有以下几种方式。

1、语法格式

find [路径] [选项] [操作]

路径:可以指定搜索的文件在哪个目录下

选项:选项内容较多,仅列出常用选项,多个选项可一起使用,例如 -type 和 -name

[root@localhost /]# find / -type d -name "nacos"

/usr/local/nacos

/usr/local/nacos/nacos1.4/bin/work/Tomcat/localhost/nacos

/usr/local/nacos/nacos2.1/bin/work/Tomcat/localhost/nacos

/usr/local/nacos/nacos2.1/work/Tomcat/localhost/nacos

2、选项说明

选项参数 使用说明 命令示例
-name 根据文件名查找 find / -name "zhufeng.log"
-user 根据文件所属用户查找 find / -user "zhufeng"
-type

文件类型:f、文件,d、目录

find / -type d
-size

文件大小:

-n:小于 大小为 n 的文件
+n:大于 大小为 n 的文件

find / -size "1M"
-mtime

文件更改时间,单位:天

-n:n 天以内修改的文件。
+n:n 天以外修改的文件。

find / -mtime "+5"
-mmin

文件更改时间,单位:分钟

-n:n 分钟以内修改的文件。
+n:n 分钟以外修改的文件。

find / -mmin "-10"

3、命令示范

场景一:从根目录查找名字为 nacos文件目录

[root@localhost /]# find / -name "nacos"

/usr/local/nacos

/usr/local/nacos/nacos1.4/bin/work/Tomcat/localhost/nacos

/usr/local/nacos/nacos2.1/bin/work/Tomcat/localhost/nacos

/usr/local/nacos/nacos2.1/work/Tomcat/localhost/nacos

[root@localhost /]#

场景二:从当前目录查询,名字以nacos为前缀的文件目录

[root@localhost /]# cd /usr/local/nacos

[root@localhost nacos]# find . -name "nacos*"

./nacos-server-1.4.3.tar.gz

./nacos1.4

./nacos1.4/target/nacos-server.jar

./nacos1.4/conf/nacos-mysql.sql

./nacos1.4/conf/nacos-logback.xml

./nacos1.4/bin/work/Tomcat/localhost/nacos

...

[root@localhost nacos]#

场景三:从当前目录查询,名字以nacos为前缀的目录

[root@localhost nacos]# find . -name "nacos*" -type d

./nacos1.4

./nacos1.4/bin/work/Tomcat/localhost/nacos

./nacos2.1

./nacos2.1/bin/work/Tomcat/localhost/nacos

./nacos2.1/work/Tomcat/localhost/nacos

./nacos2.0

[root@localhost nacos]#

场景四:从当前目录查询,名字以nacos为前缀的文件大小大于5M文件

[root@localhost nacos]# find . -name "nacos*" -type f -size "+5M"

./nacos-server-1.4.3.tar.gz

./nacos1.4/target/nacos-server.jar

./nacos2.1/target/nacos-server.jar

[root@localhost nacos]#

场景五:从当前目录查询,名字以nacos为前缀创建时间超过5天文件

[root@localhost nacos]# find . -mtime "+5" -name "nacos.*" -type f

./nacos1.4/logs/nacos.log.2022-06-26.0

./nacos1.4/logs/nacos.log

./nacos1.4/logs/nacos.log.2022-04-07.0

./nacos1.4/logs/nacos.log.2022-04-08.0

./nacos1.4/logs/nacos.log.2022-06-25.0

./nacos1.4/logs/nacos.log.2022-06-27.0

./nacos1.4/logs/nacos.log.2022-06-28.0

./nacos2.1/logs/nacos.log.2022-06-08.0

./nacos2.1/logs/nacos.log

[root@localhost nacos]#

场景六:从根目录查询,文件名为wechat 文件大小大于1k 用户属于zhufeng文件

 [root@localhost ~]# find / -name "wechat*" -type f -size "+1k" -user zhufeng
 /usr/local/app/blog/wechat.log
 /usr/local/app/blog/wechat.log.20220808

[root@localhost ~]#

二、which命令

which查找文件与find方式不同,which从环境变量文件(/etc/profile)中的path目录中查找,且which找的都是可执行文件

1、语法格式

which 文件名

2、命令示范

[root@localhost nacos]# which java

/usr/local/java/jdk1.8.0_333/bin/java

[root@localhost nacos]# which nginx

/usr/sbin/nginx

[root@localhost nacos]#

三、locate命令

这是区别以上两种的方式的一种查找文件方式,locate以一个数据库文件为基础查找。

linux系统每天至少自动扫描一次文件,将结果保存到数据库,locate查的是数据库记录。

locate查询比find要快,但最新文件如果在数据库中没有记录会查询不到,需要手动更新,

更新命令:updatedb

1、语法格式

locate 文件名

2、命令示范:

场景:在/usr/local/nacos/nacos2.0目录下已经存在文件nacos.md,locate可以搜索到,然后创建新文件nacos.md.1,进行搜索,执行updatedb更新后再次搜索

[root@localhost nacos2.0]# locate nacos.md

/usr/local/nacos/nacos2.0/nacos.md

[root@localhost nacos2.0]# touch nacos.md.1

[root@localhost nacos2.0]#文章来源地址https://www.toymoban.com/news/detail-609778.html

[root@localhost nacos2.0]# locate nacos.md

/usr/local/nacos/nacos2.0/nacos.md

[root@localhost nacos2.0]#

[root@localhost nacos2.0]# updatedb

[root@localhost nacos2.0]# locate nacos.md

/usr/local/nacos/nacos2.0/nacos.md

/usr/local/nacos/nacos2.0/nacos.md.1

[root@localhost nacos2.0]#

到了这里,关于Linux命令手册-通过文件名查找文件(find、which、locate)(详解)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【嵌入式开发 Linux 常用命令系列 7.4 -- awk 处理文件名,去除后缀只保留文件名】

    请阅读 【嵌入式开发学习必备专栏 】 在 shell 中, 可以使用 awk 来处理文件名,去除其后缀。下面是一个示例命令,它会将带有后缀的文件名作为输入,并输出没有后缀的文件名: 这个命令片段做了以下几件事情: -F\\\".\\\" 设置了输入字段的分隔符为点号( . ),这是文件后缀

    2024年04月08日
    浏览(63)
  • Ubuntu知道文件名查找文件路径

    1.whereis 文件名 特点:快速,但是是模糊查找,例如找#whereismysql它会把mysql,mysql.ini,mysql.*所在的目录都找出来。 2.find /-name文件名 特点:准确,但速度慢,消耗资源大。 3.locate 文件名 强力推荐的方法,最快,最好的方法。 注意:第一次使用该命令,可能需要更新数据库,按

    2024年02月15日
    浏览(65)
  • js 通过window.open(url)下载文件,修改文件名

    在页面调用

    2024年02月15日
    浏览(83)
  • Linux下使用find命令查找文件

    0、find 命令,查找目录下以2022开头的文件 1、find 命令,查找类型为文件并且文件名称以2022开头的文件 2、find命令统计查找出来的文件总数量 3、进阶用法,编写sh脚本使用sh ./test.sh 命令运行,或者粘贴至窗口直接运行。 4、如果创建test.sh脚本后可能无法运行,提示如下错误

    2024年02月11日
    浏览(104)
  • Linux中文件重命名 - 如何在Linux中更改文件名?

    在Linux操作系统中,你可以使用多种方法来更改文件名。无论是通过命令行还是图形用户界面,下面将介绍几种常用的方法来重命名文件。 使用mv命令 mv命令是Linux中最常用的文件重命名命令之一。它的语法如下: 使用rename命令 rename命令是一个强大的批量重命名工具,它可以

    2024年02月07日
    浏览(58)
  • Linux下查找文件(find、grep命令)

    目录 一、find命令 1.按文件名 2.按文件类型查询 3.按照文件大小查找 4.按照文件日期查找 4.1按照创建日期查找 4.2按照修改日期查找 4.3按照访问日期查找 5.按深度查找 5.1查找起始点以下n层的目录,不超过n层  5.2搜距离起始点n层以下的目录(即最少n层) 6.高级查找 6.1-exec  

    2024年01月16日
    浏览(140)
  • java minio通过getPresignedObjectUrl设置(自定义)预签名URL下载文件的响应文件名之minio源码改造方案

    用户上传文件到Minio时,一般存储在Minio中的对象名称都是后端以UUID或者其他随机或非随机方案生成的唯一标识做为文件名,这个对象名称一般都不会是用户上传时的原文件名称。 在用户下载时,想让文件流不通过后端服务器,而是用户直接申请并使用某个要下载对象的Min

    2024年01月25日
    浏览(64)
  • Linux:find命令简单使用(查找文件及文件夹)

    find的主要用来查找文件,也可以用于查看文件夹,二者用法类似,使用 -type d ,通过type指定查找文件夹, 如果不指定,是会将包含查找内容的文件和文件夹一起输出 举例:查找test目录位置 -type x :x是查找的文件类型,其类型一般有: 一般正规文件:f 设备文件:b、c 目录

    2024年02月11日
    浏览(91)
  • Linux基础笔记10 | 文件查找命令 find 详解

    用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示 学习参考博文:骏马金龙 (junmajinlong.com) 最基础的打印功能

    2024年02月04日
    浏览(91)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包