虽然我确实知道/usr/bin和/usr/local / bin是什么,但我很好奇哪个应该按照惯例在另一个之前?那有什么特别的原因吗?
类似于/usr/lib和/usr/local / lib – 希望答案是相同或相似的.
多一点 –
只是原始问题的扩展,您将如何按照约定在$PATH中订购以下内容?为什么?
/bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin /opt/local/bin /opt/local/sbin
虽然我确实知道/usr/bin和/usr/local / bin是什么,但我很好奇哪个应该按照惯例在另一个之前?那有什么特别的原因吗?
类似于/usr/lib和/usr/local / lib – 希望答案是相同或相似的.
多一点 –
只是原始问题的扩展,您将如何按照约定在$PATH中订购以下内容?为什么?
/bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin /opt/local/bin /opt/local/sbin
例如,在撰写本文时,OSX El Capitan提供了git版本2.5.4(在/usr/bin中).如果你想要一个更新的版本,你可以使用Homebrew来安装git版本2.7.0(到/usr/local / bin).由于/usr/local / bin位于$PATH环境变量中的/usr/bin之前,因此当您在shell中发出命令git时,将使用较新的Homebrew版本.
在运行OSX El Capitan的新Mac上(我碰巧有一个),/ etc / paths文件包含以下内容:
/usr/local/bin /usr/bin /bin /usr/sbin /sbin
它产生以下$PATH环境变量:
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
这与自制软件兼容.我建议坚持使用此OSX默认值.如果你真的想要包含/usr/local / sbin(在上面的问题中列出),我会把它放在/usr/sbin之前,原因与上面类似.对于/ opt / local / bin和/ opt / local / sbin,我个人没有发现需要将它们添加到路径中,但似乎它们可能与它们的/usr/local类似物位于类似的位置,因为/ opt传统上包含用户安装的二进制文件.
注意:相同的解释适用于/usr/lib与/usr/local / lib.