unix& gnu / linux发行版:'which'命令的可能位置?

时间:2013-03-29 16:13:49

标签: linux bash unix sh csh

想要将哪个命令的完整路径作为改进引用到某些shell脚本。是否有人知道某些unix gnu / linux发行版的标准位置 BESIDES / usr / bin / which?

3 个答案:

答案 0 :(得分:2)

这不是linux系统的标准部分。它不存在于Linux Standard Base 4.1中,并且不存在于Single Unix Specification Version 4 / POSIX 2008中:

因此,问题的唯一正式答案是在文件系统中没有可靠位置。

对于实际解决方案:应始终在默认搜索路径目录中提供。所以最好的实际答案是:从没有硬编码路径的脚本运行。 [编辑:任何带有一组硬编码路径的解决方案都比使用默认搜索路径更差]。

答案 1 :(得分:1)

试试这个:

which -a which

-a标志列出了所提供参数的所有位置(与返回将在当前环境中执行的文件或链接的路径名相反,其参数在严格符合POSIX的情况下作为命令提供) shell。)

答案 2 :(得分:1)

你可以尝试:

whereis which

whereis找到命令的二进制源