linux命令中which、whereis、locate有啥区别?

author author     2023-05-04     745

关键词:

which (寻找执行档) :这个指令是根据PATH这个环境变量所规范的路径,去搜寻执行档的档名,所以,重点是找出执行档而已,which 后面接的是完整档名\x0d\x0awhereis (寻找特定档案):搜寻linux数据库档案中所记录的东西,和locate的主要区别在于后面的参数\x0d\x0alocate:搜寻linux数据库档案中所记录的东西,后面直接跟档案的部分名称就行\x0d\x0afind:直接搜索整个硬盘 参考技术A

locate命令不是实时查找,所以查找的结果不精确,但查找速度很快。

which命令是查找命令是否存在,以及命令的存放位置在哪儿。

whereis命令只能用于搜索程序名,而且只搜索二进制文件

locate

locate命令不是实时查找,所以查找的结果不精确,但查找速度很快。因为它查找的不是目录,而是一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。


locate使用格式


locate [指定目录]


例:查找所有包含passwd的文件


#locate passwd


例:查找所有包含passwd的文件,并且只显示前十个


#locate -n 10 passwd


which


which命令是查找命令是否存在,以及命令的存放位置在哪儿。


例:#which ls

whereis


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


whereis命令的使用实例:


#whereis vim


参考技术B which (寻找执行档) :这个指令是根据PATH这个环境变量所规范的路径,去搜寻执行档的档名,所以,重点是找出执行档而已,which 后面接的是完整档名
whereis (寻找特定档案):搜寻linux数据库档案中所记录的东西,和locate的主要区别在于后面的参数
locate:搜寻linux数据库档案中所记录的东西,后面直接跟档案的部分名称就行
find:直接搜索整个硬盘
参考技术C   1.find
  find是最常用和最强大的查找命令。它能做到实时查找,精确查找,但速度慢。
  find的使用格式如下:
  #find [指定目录] [指定条件] [指定动作]
  指定目录:是指所要搜索的目录和其子目录。如果不指定,则默认为当前目录。
  指定条件:是指所要搜索的文件的特点。
  指定动作:是指对搜索的结果如何处理。
  常见选项:
  -name 根据文件名称查找(严格区分大小写,如果文件名中间有空格,则必须把文件名用双引号引起来)
  -iname 根据文件名查找(不区分大小写)
  -regex "PATTERN" 正则表达式匹配
  -user 根据文件属主进行查找
  -group 根据文件属组进行查找
  -uid 根据文件的uid查找
  -gid 根据用户的gid查找
  -nouser 查看所有的没有属主的文件
  -nogroup 查看所有的没有属组的文件
  例:查看tmp目录下,文件属主为redhat的文件
  #ls -l `find /tmp -user redhat`

  2.locate
  locate命令不是实时查找,所以查找的结果不精确,但查找速度很快。因为它查找的不是目录,而是一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。
  locate使用格式
  locate [指定目录]
  例:查找所有包含passwd的文件
  #locate passwd
  例:查找所有包含passwd的文件,并且只显示前十个
  #locate -n 10 passwd

  3.which
  which命令是查找命令是否存在,以及命令的存放位置在哪儿。
  例:#which ls

  4.whereis
  whereis命令只能用于搜索程序名,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。
  whereis命令的使用实例:
  #whereis vim
  
  5.type
  type命令用来区分某个命令到底是由shell自带的,还是由shell外部的独立二进制文件提供的。如果一个命令是外部命令,那么使用-p参数,会显示该命令的路径,相当于which命令。
  
  #type cd
  系统会提示,cd是shell的自带命令(build-in)。
  
  #type grep
  系统会提示,grep是一个外部命令,并显示该命令的路径。
  
  #type -p vim
  加上-p参数后,就相当于which命令

linux下的which,whereis,locate,find命令的区别

...找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:    which  查看可执行文件的位置。   whereis 查看文件的位置。    locate   配合数据库查看文件位置。   find &n... 查看详情

linux命令之which,whatis,whereis,tty

...:showsthefullpathof(shell)commands;Whichtakesoneormorearguments意思是该命令用于显示命令所在包括shell命令的绝对路径,并且该命令至少需要一个参数默认在/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin这些路径搜索即$PATH,可以通过设置该环境... 查看详情

linux命令中which、whereis、locate有啥区别?

...硬盘参考技术A  1.find  find是最常用和最强大的查找命令。它能做到实时查找,精确查找,但速度慢。  find的使用格式如下:  #find[指定目录][指定条件][指定动作]  指定目录:是指所要搜索的目录和其子目录。如果... 查看详情

使用whereis/which/locate查找文件(代码片段)

whereis命令whereis只能用于搜索可执行文件(-b),联机帮助文件(-m)和源代码文件(-s).它只在一个数据库中查询(/var/lib/mlocate).这个数据库是Linux系统自动创建的,包含本地所有文件信息,并且每天通过自动执行updatedb命令更新一次. 如果... 查看详情

linux如何查找命令的路径

linux下,我们常使用cd,grep,vi等命令,有时候我们要查到这些命令所在的位置,如何做呢?linux下有2个命令可完成该功能:which,whereis which用来查看当前要执行的命令所在的路径。whereis用来查看一个命令或者文件所在的路径,wh... 查看详情

命令搜索命令whereis与which

whereis命令名#搜索命令所在路径及帮助文档所在位置,只能搜索系统命令。选项:  -b:  只查找可执行文件  -m:  只查找帮助文件 whoamiwhatisls #ls是什么命令 which文件名#搜索命令所在路径及别名  查看详情

linux查找命令,文件就这些which,whereis,locate,find,grep,|(代码片段)

...看某个软件是否安装,某个文件在哪里等,某个命令是否存在等。1. which 查看可执行文件的位置 which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果,查询... 查看详情

linux查找命令,文件就这些which,whereis,locate,find,grep,|(代码片段)

...看某个软件是否安装,某个文件在哪里等,某个命令是否存在等。1. which 查看可执行文件的位置 which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果,查询... 查看详情

liunxfind/locate/whereis/which总结

一、locate命令是一个文件查找命令,命令所属软件包mlocate不同于find命令的是,find命令在整块磁盘中搜索;而locate命令在数据路库文件中搜索,当天创建的文件第二天才会被定时任务处理,添加到数据库文件中。find命令默认是... 查看详情

linux下各种查找命令(find,grep,which,whereis,locate)(代码片段)

find命令find<path><expression><cmd>path:所要搜索的目录及其所有子目录。默认为当前目录。expression:所要搜索的文件的特征。cmd:对搜索结果进行特定的处理。如果什么参数也不加,find默认搜索当前目录... 查看详情

linux中何种命令可以查看当前所处的目录位置

Linux中查看当前所处的目录位置可以使用pwd命令。1、命令格式pwd[选项]2、命令功能查看”当前工作目录“的完整路径3、常用参数一般情况下不带任何参数如果目录是链接时:格式:pwd-P 显示出实际路径,而非使用连接(link)路... 查看详情

whereis命令

whereis命令用来定位指令的二进制程序、源代码文件和man手册页等相关文件的路径。whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所... 查看详情

linux查找绝对路径whichwhere

whichwhich命令的原理:在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。which命令的使用实例:$wh... 查看详情

linux操作系统下查找文件的几种方法

linux下最强大的搜索命令为”find“。它的格式为”find<指定目录><指定条件><指定动作>“;比如使用find命令搜索在根目录下的所有interfaces文件所在位置,命令格式为”find/-name\'interfaces\'“使用locate搜索linux系统中的... 查看详情

每天一个linux命令(16):which命令

...找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:     which  查看可执行文件的位置。    whereis 查看文件的位置。     locate    查看详情

每天一个linux命令(16):which命令

...找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索: which  查看可执行文件的位置。 whereis 查看文件的位置。  locate   配合数据库查看文件位置。 find   实际... 查看详情

4-2命令搜索命令whereis和wich

命令搜索命令whereis和which命令:whereis格式:wwhereis命令名称#搜索命令所在途径以及文档的所在位置选项:     -b:之查找可执行的文件    -m:只查找帮助文件 命令:which格式:which命令名#搜索命令所在路径极其... 查看详情

linux命令-whichwhereisfind的区别

Linux命令中,which、whereis、find这三个都是查找文件的,但是三者之间有些区别,很多小伙伴都搞不太清楚,下面给大家详细介绍下,看完这篇文章后,不再傻傻分不清。which命令原理:执行which命令时&#x... 查看详情