Featured image of post 查询命令-which/whereis

查询命令-which/whereis

674 words

which

which命令用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录。which指令会在环境变量$PATH设置的目录里查找符合条件的文件。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

which是shell内建命令,内建命令要比系统论命令有比较高的执行效率。

具体命令如下:

which 命令

案例演示:

使用which命令定位passwd命令的位置,具体使用如下命令:

which passwd

图片

可以看到passwd命令是存放在/usr/bin目录下。

whereis

whereis命令用来定位指令的二进制程序、源代码文件和man手册页等相关文件的路径。

具体命令如下:

whereis 命令参数 文件名

常用命令参数如下:

1
2
3
4
5
6
-b:只查找二进制文件;
-B<目录>:只在设置的目录下查找二进制文件;
-m:只查找说明文件;
-M<目录>:只在设置的目录下查找说明文件;
-s:只查找原始代码文件;
-S<目录>只在设置的目录下查找原始代码文件;

案例演示1:

使用whereis命令查找passwd命令所有信息,包括二进制文件位置、说明文件位置和源码文件位置,具体使用如下命令:

whereis passwd

图片

案例演示2:

使用whereis命令仅查找passwd命令二进制文件位置,具体使用如下命令:

whereis -b passwd

图片

可以看到passwd命令存在的位置有两处,分别是/usr/bin/passwd和/usr/bin/X11/passwd,那么在我们执行passwd时,如何确定是执行的哪一个,此时我们就可以使用which命令来定位首先被执行的命令位置。

使用 Hugo 构建
主题 StackJimmy 设计