Linux 下几个查找命令 find,locate,whereis,which,type 总结

在 Linux 命令行下,常常根据需要进行相应文件的查找,有很多方法可以做到这一点,本次博客对这些方法进行一个总结,可根据需要灵活运用。

1. find

find 是最常见也是最强大的查找命令,几乎能满足任何查找需求。
find 命令使用格式:

find 路径 参数
    时间查找参数:

    -atime n :将 n*24小时内存取过的的文件列出来
    -ctime n :将 n*24小时内改变、新增的文件或者目录列出来
    -mtime n :将 n*24小时内修改过的文件或者目录列出来
    -newer file :把比file还要新的文件列出来

    名称查找参数:

    -gid n:寻找群组 ID 为 n 的文件
    -group name:寻找群组名称为 name 的文件
    -uid n:寻找拥有者 ID 为 n 的文件
    -user name:寻找用户者名称为 name 的文件
    -name file:寻找文件名为 file 的文件(可以使用通配符)

    2. locate

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

    locate 文件或目录名称
    

      3. whereis

      whereis 命令只能用于程序名的搜索,而且只搜索二进制文件(参数 -b)、man 说明文件(参数 -m)和源代码文件(参数 -s)。如果省略参数,则返回所有信息。
      在这里插入图片描述

      4. which

      which 命令的作用是,在 PATH 变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用 which 命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。
      在这里插入图片描述

      5. type

      type 命令其实不能算查找命令,它是用来区分某个命令到底是由shell自带的,还是由shell外部的独立二进制文件提供的。如果一个命令是外部命令,那么使用 -p 参数,会显示该命令的路径,相当于 which 命令。
      在这里插入图片描述

      出处: https://blog.csdn.net/huangfei711/article/details/83150339
      posted @ 2021-01-26 22:35  十点书屋  阅读(225)  评论(0)    收藏  举报