Linux 中的 whereis 命令及示例
whereis命令用于在 Linux 系统中查找指定文件的命令和手册部分的源/二进制文件的位置。如果我们将whereis命令与find命令进行比较,它们将看起来彼此相似,因为两者都可以用于相同的目的,但是whereis命令通过相对消耗更少的时间来更准确地产生结果。在任何 RHEL/CentOS 7 中执行 whereis不需要任何 root 权限。
提供的名称首先从前导路径名/目录组件和 .ext形式的任何(单个)尾随扩展名中删除,例如.c 。 s 的前缀。使用源代码控制产生的结果也得到处理。然后 whereis尝试在标准 Linux 目录列表中定位所需的程序。
使用 whereis 命令时要记住的要点:
- 由于whereis命令使用chdir (更改目录 2V)以最快的方式为您提供结果,因此-M 、 -S或-B给出的路径名必须完整且定义明确,即它们必须以“ / ”开头,并且应该是系统目录中存在的有效路径,否则它会在没有任何有效结果的情况下退出。
- whereis命令有一个硬编码(代码不是动态的并且随规范而变化)路径,因此您可能并不总能找到您要查找的内容。
句法:
whereis [options] filename...
示例 1:假设我们想找到apropos命令的位置,那么我们需要在终端中执行以下命令:
示例2:查找lshw命令的位置。
选项:
- -b :当我们只想搜索二进制文件时使用此选项。
示例:要定位 Linux 命令的二进制文件,假设为 gunzip。
- -m :当我们只想搜索手册部分时使用此选项。
示例:定位 false 命令的手册页。
- -s :当我们只想搜索源时使用此选项。
- -u :此选项搜索异常条目。如果源文件或二进制文件按照 [-bmsu]和“ -u ”描述的那样在系统中不存在,则称其为异常文件。因此` whereis -m -u * ' 会询问当前目录中那些有异常条目的文件。
举例:显示当前目录下没有文档文件的文件。
- -B :此选项用于更改或以其他方式限制whereis搜索二进制文件的位置。
示例:要在路径中定位 lesspipe 的二进制文件, /bin 。
- -M :此选项用于更改或以其他方式限制whereis搜索手册部分的位置。
示例:检查仅位于特定位置的介绍手册页,即/usr/share/man/man1 。
- -S :此选项用于更改或以其他方式限制whereis搜索源的位置。
示例:在 /usr/bin 中查找 /usr/man/man1中未记录的所有文件,源代码在/usr/src 中。
- -f :此选项只是终止最后一个目录列表并表示文件名的开始。当使用任何 -B 、 -M或-S选项时,必须使用此选项。
- -V :显示版本信息并退出。
- -h :显示此帮助并退出。