小编con*_*uum的帖子

什么情况下首先在路径中找到的可执行文件不会被使用

我在 osx 上使用 zsh ( 5.4.2_1 与 homebrew 一起安装)有一些奇怪的行为,没有使用路径中第一次出现的可执行文件。

这是场景:

echo $PATH 返回:

/usr/local/Cellar/zplug/HEAD-9fdb388/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
Run Code Online (Sandbox Code Playgroud)

brew在两者中

/usr/local/Cellar/zplug/HEAD-9fdb388/bin     
Run Code Online (Sandbox Code Playgroud)

usr/local/bin/brew
Run Code Online (Sandbox Code Playgroud)

这通过运行which -a brew返回来确认:

/usr/local/Cellar/zplug/HEAD-9fdb388/bin/brew   
/usr/local/bin/brew
Run Code Online (Sandbox Code Playgroud)

但是当我运行which brew它返回时:

/usr/local/bin/brew
Run Code Online (Sandbox Code Playgroud)

并且brew确实运行/usr/local/bin/brew而不是/usr/local/Cellar/zplug/HEAD-9fdb388/bin/brew

当 brew 在路径中较早时怎么会发生这种情况?

帮助表示赞赏。

zsh path

16
推荐指数
1
解决办法
1131
查看次数

标签 统计

path ×1

zsh ×1