Shell-如何查找某些命令的目录?

我知道当您在shell上时,只能使用在PATH上某个目录中可以找到的命令。即使我也不知道如何查看PATH变量上的目录(这是另一个可以回答的好问题),我想知道的是:

我来壳写:

$ lshw

我想知道shell上的命令,该命令可以告诉我该命令位于何处。换句话说,此“可执行文件”位于何处?

就像是:

$ location lshw

/usr/bin

任何人?

回答:

如果您使用的是Bash或zsh,请使用以下命令:

type -a lshw

这将显示目标是内置,函数,别名还是外部可执行文件。如果是后者,它将显示在中显示的每个位置PATH

bash$ type -a lshw

lshw is /usr/bin/lshw

bash$ type -a ls

ls is aliased to `ls --color=auto'

ls is /bin/ls

bash$ zsh

zsh% type -a which

which is a shell builtin

which is /usr/bin/which

在Bash中,对于函数,type -a还将显示函数定义。您可以declare -f

functionname用来做同样的事情(您必须对zsh使用它,因为type -a没有这样做)。

以上是 Shell-如何查找某些命令的目录? 的全部内容, 来源链接: utcz.com/qa/416056.html

回到顶部