每天一个Linux之whereis命令

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

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

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


1.命令格式:

  whereis [-bmsu] [BMS 目录名 -f ] 文件名

2.命令功能:

  whereis命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置。这些文件的属性应属于原始代码,二进制文件,或是帮助文件。whereis 程序还具有搜索源代码、指定备用搜索路径和搜索不寻常项的能力。

3.命令参数:

  -b 定位可执行文件

  -m 定位帮助文件

  -s 定位源代码文件

4.使用实例:

实例1:将和某文件相关的文件都查找出来

命令:

 wheseis ls、where cd、whereis redis (redis已源码包编译安装)

输出:

[BEGIN] 2015/12/30 23:59:17
[root@localhost ~]# whereis ls
ls: /bin/ls /usr/share/man/man1p/ls.1p.gz /usr/share/man/man1/ls.1.gz
[root@localhost ~]# whereis cd
cd: /usr/share/man/man1p/cd.1p.gz /usr/share/man/man1/cd.1.gz
[root@localhost ~]# whereis redis
redis: /etc/redis.conf /usr/local/bin/redis.conf /usr/local/redis
[root@localhost ~]# whereis tomcat
tomcat:

[END] 2015/12/30 23:59:51

说明:tomcat没安装,找不出来,redis安装找出了很多相关文件


实例2:只将二进制文件 查找出来 

命令:

  whereis -b redis

输出: 

[BEGIN] 2015/12/31 0:05:09
[root@localhost ~]# whereis ls
ls: /bin/ls /usr/share/man/man1p/ls.1p.gz /usr/share/man/man1/ls.1.gz
[root@localhost ~]# whereis -b ls
ls: /bin/ls
[root@localhost ~]# whereis -m ls
ls: /usr/share/man/man1p/ls.1p.gz /usr/share/man/man1/ls.1.gz
[root@localhost ~]# whereis -s ls
ls:

[END] 2015/12/31 0:05:31

说明:whereis -b 查找ls可执行的路径 whereis -m ls 查出说明文档路径,whereis -s ls 找source源文件。

你可能感兴趣的:(每天一个linux命令)