当前位置: 代码迷 >> 综合 >> whereis command usage
  详细解决方案

whereis command usage

热度:96   发布时间:2023-11-17 02:28:40.0

whereis命令: locate the binary, source, and manual page files for a command 定位命令,文件的位置


语法: whereis [options] [-BMS directory… -f] name…

常用选项:

-b:  搜索二进制文件
-m: 搜索man 手册文件
-s: 搜索源代码文件
-B:  指定搜索二进制文件的路径,后跟文件夹列表,用空白字符隔开。
-M: 指定搜索man手册文件的路径,后跟文件夹列表,用空白字符隔开。
-S: 指定搜索资源文件的路径,后跟文件夹列表,用空白字符隔开。
-f: 在指定-B, -M, -S选项时候,用来区分文件夹列表和name,用来分割的,-f后面跟name
-l:列出有效的搜索路径

whereis 和 find 命令区别:

linux会把系统上的所有文件名放在一个数据库中,whereis 是查询这个数据库来定位文件的,
而find命令则是通过遍历磁盘的方式来查找名字,所以whereis 效率比较高。 但是这个数据库
更新频率比较低,所以并不会查到我们刚刚增加的文件,或者会查到我们刚刚删除的文件。

实例:


$ whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz$ whereis -b ls
ls: /bin/ls$ whereis -m ls
ls: /usr/share/man/man1/ls.1.gz$ whereis -s ls
ls:说明: whereis 可以分开检索的种类,没有相关的文件,则输出空。

$ whereis -b -B . -f man
man: /home/hu/myGitHub/blogsource/_posts/man.md说明:-B:指定搜索路径,-b,指定only 选项, -f 指定name。

$ whereis -l
bin: /usr/bin
bin: /usr/sbin
bin: /usr/lib
bin: /bin
bin: /sbin
man: /usr/share/man/de.UTF-8
man: /usr/share/man/de
man: /usr/share/man/man7
man: /usr/share/man/it.ISO8859-1
man: /usr/share/man/pt_BR
man: /usr/share/info
src: /usr/src/linux-headers-4.15.0-45
src: /usr/src/linux-headers-4.15.0-43
src: /usr/src/linux-headers-4.15.0-46说明:列出whereis程序搜索的路径。路径分为三类bin,man,src三个路径。
  相关解决方案