时间:2021-05-23
linux/Unix可以使用 whereis 这个命令来查找某个特定的程序和命令的二进制文件()、源代码和man手册的位置,貌似现在还能看到软件的配置文件的位置(路径)。
命令作用:
查找二进制文件位置
查找软件的配置文件的位置
查找源代码文件位置
查看man手册位置
语法
基本语法如下:
复制代码代码如下:whereis command
OR
复制代码代码如下:whereis program
OR
复制代码代码如下:whereis [options] program
OR
复制代码代码如下:whereis -BMS directory -f command
whereis 使用举例:
查找 date 命令的 可执行文件、源代码和man手册的位置,输入:
复制代码代码如下:$ whereis date
输出如下图:
Animated gif 01: whereis command running on my Debian based server
如何只搜索二进制文件的位置?
使用 -b 参数 :
复制代码代码如下:$ whereis -b date
如何只搜索man手册的位置?
使用 -m 参数:
复制代码代码如下:$ whereis -m date
如何只搜索源代码文件的位置?
使用 -s 参数:
复制代码代码如下:$ whereis -s date
问题:whereis -u参数是有问题的,按照man whereis 的说明,-u的就是搜索那些没有二进制文件或者源代码文件或者man手册的文件的。但是实际测试发现,和这毛关系都没有啊。
man手册上的一个例子:
A file is said to be unusual if it does not have one entry of each requested type. Thus the following example, asks for those files in the current directory which have no documentation(意思是搜索当前目录下,没有man文档的文件):
复制代码代码如下: $ whereis -m -u *
我们先cd /bin ,然后执行上面的命令,会发现 whereis -m -u * 和 where -m * 结果是一模一样的。-u的功能完全没体现出来。而且与man文档描述的完全不符,因为/bin目录下的文件都是有man文档的,按man文档的意思,结果应该是空的,但是结果却不是空的。
如何限制搜索的路径?
使用下面的参数限制对应的搜索路径:
-B /path/to/dir : 限制在指定的目录搜索二进制文件.
-M /path/to/dir : 限制在指定的目录搜索man手册文件.
-S /path/to/dir : 限制在指定的目录搜索二进制文件.
在使用了-B , -M , -S 任意一个参数时,必须加上 -f 参数, 然后指定要搜索的文件名.
实例如下:只在 /bin 目录下搜索 ls 和gcc的:
复制代码代码如下: $ whereis -B /bin -f ls gcc
结果如下:
复制代码代码如下: ls: /bin/ls /usr/share/man/man1/ls.1.gz
gcc:
可以看到,gcc在/bin目录下搜索二进制文件是没有结果的,说明gcc的二进制文件不在 /bin目录下。
问题:但是,我发现,虽然/bin目录下没有gcc二进制文件,但是使用上面的命令照样有输出,而不是像我翻译的这篇文章那样。
实例:这也是man手册上的例子,经测试,这里 -u参数还是和man手册上描述的不符合。
查找所有/usr/bin目录下的,其man文档不在 /usr/man/man1/ ,且其源代码文件不在/usr/src/ 的 文件, 输入:
复制代码代码如下: # cd /usr/bin
# whereis -u -ms -M /usr/man/man1 -S /usr/src -f *
测试:
复制代码代码如下: #cd /bin
#whereis -u -m -M /root -f *
按man手册的意思,这行命令的功能是:查找 所有/bin下,其man文档不在/root的文件。所以应该是有结果输出的,因为/root目录下根本没有任何文件的man手册。可以,惊奇的发现,结果居然是空的。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Linux下whereis命令和find命令有点相似,whereis命令查找速度更快,但只能查找程序名,下面随小编一起来了解下whereis命令的具体用法吧
我们经常在Linux要查找某个文件或命令,但不知道放在哪里了,可以使用下面的一些命令来搜索。which查看可执行文件的位置whereis查看文件的位置locat
-h或者--help帮助命令的使用详解查看shell内置命令的帮助,可以使用-h或者--help复制代码代码如下:#wget--help或者为了方便查看,和le
Linux系统操作中,除了可以使用命令监控系统性能外(详解监控Linux系统性能的命令有哪些),还可使用KSysguard工具,KSysguard是系统性能
linuxmore命令详解分析如下: 1、使用cat命令显示install.log文件,系统会将install.log文件完整的显示出来,但是用户只能看到文件