Linux下文件和命令的查找

本文详细介绍了在Linux系统中查找文件和命令的四种常用方法:which、whereis、locate和find。which用于查找PATH变量中的命令路径,whereis除了查找命令外,还查找man手册路径。locate依赖于预构建的数据库,适用于快速模糊查找,但可能不包含最新变动。find是最灵活的方法,允许根据各种条件如文件名、大小、类型、时间等进行查找,并支持使用-exec和|xargs操作。了解这些工具能有效提高Linux系统中的文件管理效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux下文件和命令的查找有四种常用的方式,分别是which、whereis、locate、find

第一种:which

查找在PATH变量中的路径下的文件的路径,显示的绝对路径;

第二种:whereis

查找在PATH变量和MANPATH变量中的路径下的文件的路径,显示的结果是文件的绝对路径以及man手册所在路径

第三种:locate

读取一个或多个由updatedb准备的数据库,在“/”下进行模糊查找,显示的结果是找到文件的绝对路径;

注意:在centos7中默认没有该命令,需要使用yum install mlocate -y下载,在最开始使用的时候需要调用updatedb命令,对于新建和刚删除的文件使用locate命令可能会有所偏差,因为数据库中的数据可能没有更新,可以在使用locate之前先调用updatedb;

第四种:find

在指定路径下查找文件

一般格式:find [path] [选项] 文件

常见的选项:

1. -name:根据名字精确查找,如果相模糊查找的话可以使用通配符;

find -name "test.sh"

find / -name "*hello*"
2.  -iname:根据名字精确查找,但是不区分大小写,与-name类似;

3. -size:根据文件的大小查找,“-”代表比某个值小的文件,“+”代表比某个值大的文件,常用的单位有k,M,G;

4. -type:根据文件的类型查找

        常见参数:

        f:file,普通文件

        d:directory,文件夹

        b:block,块设备文件

        l:link,链接文件

        s:socket,socket文件

        c:character,字符设备文件

        p:pip,管道文件

5. -user:根据文件的属主查找

6. -perm:根据文件的权限查找

7. -mtime/ctime/atime,-mmin/cmin/amin:根据文件的更改时间(改内容)/改动时间(改属性)/访问时间 来查找文件,time是以天为单位,min是以分钟为单位

        常见参数:

        + num:查找num时间之前的文件

        num:查找num之前那一天或那一分钟的文件

        - num:查找num时间以内的文件

8. -exec:将find找到的结果作为参数

        find . -name 1.txt -exec cp {} /lianxi/jiang \;

9. |xargs:跟-exec类似

        find . -name "test.sh"|xargs rm -f

10. -a,-o:逻辑与,逻辑或,find默认是逻辑与,如果都存在的话,逻辑与的优先级高

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值