目录
一、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 的文件 |
find / -size "1M" |
-mtime | 文件更改时间,单位:天 -n:n 天以内修改的文件。 |
find / -mtime "+5" |
-mmin | 文件更改时间,单位:分钟 -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文章来源:https://www.toymoban.com/news/detail-609778.html
[root@localhost nacos2.0]#
到了这里,关于Linux命令手册-通过文件名查找文件(find、which、locate)(详解)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!