.zshenv:2:找不到命令:rbenv

ahr*_*mpy 10 ruby zsh zshrc rbenv

从 bash 切换到 zsh 时,我查找了如何解决 zsh 未正确使用 rbenv 文件夹的问题,并发现

$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshenv
$ echo 'eval "$(rbenv init -)"' >> ~/.zshenv
$ echo 'source $HOME/.zshenv' >> ~/.zshrc
$ exec $SHELL
Run Code Online (Sandbox Code Playgroud)

我运行了所有这些,并且现在似乎正在使用正确的 rbenv 文件夹,但每当我打开新的 iTerm 窗口时,我都会收到此错误消息:

/Users/myname/.zshenv:2: command not found: rbenv
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?任何帮助将不胜感激。

小智 13

您需要将两件事添加到您的PATH. 首先rbenv是它本身,其次是红宝石shims

第 1 部分

安装

自制

如果您安装rbenvbrew,则可rbenv执行文件应该链接到/usr/local/bin/rbenv.

有关详细信息,请参阅自制安装文档

如果缺少,请添加/usr/local/bin到您的路径中。PATH

# in ~/.zshrc

export PATH=/usr/local/bin:$PATH
Run Code Online (Sandbox Code Playgroud)

GitHub 结帐

rbenv如果您通过 Github checkout安装,则可rbenv执行文件应存储在~/.rbenv/bin.

详细信息请参见github安装文档。

如果缺少,请添加~/.rbenv/bin到您的路径中。PATH

# in ~/.zshrc

export PATH=$HOME/.rbenv/bin:$PATH
Run Code Online (Sandbox Code Playgroud)

韦尔菲

rbenv请通过调用 来验证它是否在您的路径中which rbenv。应返回安装路径。

第 2 部分 垫片

将 ruby​​ 添加shims到您的路径中。

# in ~/.zshrc

eval "$(rbenv init -)"
Run Code Online (Sandbox Code Playgroud)

eval "$(rbenv init -)"您还可以直接添加文件夹,而不是使用命令shims

# in ~/.zshrc

export RBENV_ROOT=$HOME/.rbenv
export PATH=$RBENV_ROOT/shims:/versions:$PATH
Run Code Online (Sandbox Code Playgroud)

第 3 部分 rbenv 医生

您还可以运行此处rbenv-doctor提到的脚本来检查您的安装。