Linux 中whereis 、find、 whic、 locate命令之间的区别

来源:互联网 发布:抢网络 编辑:程序博客网 时间:2024/05/21 17:47

which 查看可执行文件的位置

whereis 查看文件的位置

locate 配合数据库查看文件位置

find 实际搜寻硬盘查询文件名称

1、which 

  which 是通过PATH环境变量到该路径内查找可执行文件,所以基本的功能是寻找可执行文件

2 whereis

       和find相比,whereis查找的速度非常快,这是因为linux系统会将系统内的所有文件都记录在一个数据库中,当使用whereis 和下面即将介绍的locate时,会从 数据库中查找数据,而不像find命令那样,通过遍历硬盘来查找,效率自然会很高。

      但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们再用whereis和locate查找文件时时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是数据库文件没有被更新。

3、locate 

  locate 文件或者目录名称

4、find 

 语法:

   find 路径 参数

   参数说明

   时间查找参数:

   -atime n:将n*24小时内存取过的文件列出来

   -ctime n:将n*24小时内改变、新增的文件或者目录列出来

   -mtime:将n*24小时内修改过的文件或者目录列出来

   -newer file:把比file还要新的文件列出来

    名称超找参数:

    -gid n:寻找群组ID为n的文件

    -group name:寻找群组名称为name的文件

    -uid n:寻找拥有者ID为n的文件

     -user name:寻找用户者名称为name的文件

     -name file :寻找文件命为file的文件

当我们用whereis和locate 无法找到我们我们需要的文件时,可以使用find,但是find是在硬盘上遍历查找,因此非常消耗磁盘的资源,而且效率也非常低,因此建议大家优先使用whereis 和locate。



0 0
原创粉丝点击