0%

Linux 的 which 命令

Linux which命令

Linux which命令用于查找一个命令,不像findfind是用来查找文件的。

官方定义为:

which - locate a command

改名了会在当前环境变量中查找符合条件的命令。

语法

1
$ which [-a] filename ...

这个命令基本没有参数,只有一个:

  • -a print all matching pathnames of each argument

如果找到相关的指令并可执行,将返回0.

默认无参数

查找命令并显示具体路径:

1
2
$ which bash
/usr/bin/bash

可能会输出不同,取决于环境变量。

显示所有命令

一个命令,可能会有多个版本,或者同一个版本的多个位置,可以使用-a参数来检索。

1
2
3
$ which -a bash
/usr/bin/bash
/bin/bash

一个小小无聊的尝试

Ubuntu操作系统中,看看下面的命令:

1
2
$ which which
which: shell built-in command

显示为内建指令

扩展

如果确认程序或者命令已经安装,但是就是找不到这个命令,如下:

1
2
$ which command
command not found

这个时候就需要确定环境变量的配置PATH,可以通过下面的命令来查看:

1
2
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

此时可以从输出中看到,所确认命令的路径是否在当前环境变量中,如果没有的话,就需要考虑添加进来了。

处无为之事,行不言之教;作而弗始,生而弗有,为而弗恃,功成不居!

欢迎关注我的其它发布渠道