bash:哪个vs命令
这个问题在这里已经有了答案:
好...
command
可能内置于您的shell中,并且-v
选项会告诉您shell如何调用指定的命令作为其选项。
which
是位于/usr/bin/which
的外部二进制文件,它通过$PATH
环境变量步进并检查文件的存在。
之所以选择前者是因为它避免了依赖于你的shell之外的东西。
这两个命令做不同的事情,你应该选择一个更接近你的需求。 例如,如果command
内置在shell中, command -v command
将通过它的输出(通过路径的不存在)来指示它,但是无论command
如何command
, which command
都会尝试指向路径上的文件会被你的shell解释。