从 bash 切换到 zsh 时,我查找了如何解决 zsh 未正确使用我的 rbenv 文件夹的问题,并发现了这个:
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshenv
$ echo 'eval "$(rbenv init -)"' >> ~/.zshenv
$ echo 'source $HOME/.zshenv' >> ~/.zshrc
$ exec $SHELL
我运行了所有这些,现在似乎正在使用正确的 rbenv 文件夹,但每当我打开新的 iTerm 窗口时,我都会收到此错误消息:
/Users/myname/.zshenv:2: command not found: rbenv
我做错了什么?任何帮助将不胜感激。
您需要在您的
PATH
中添加两件事。
首先是 rbenv
本身,其次是红宝石 shims
。
如果您安装了
rbenv
和 brew
,
那么 rbenv
可执行文件应该链接到 /usr/local/bin/rbenv
。
有关详细信息,请参阅自制安装文档。
如果缺少,请将
/usr/local/bin
添加到您的路径 PATH
。
# in ~/.zshrc
export PATH=/usr/local/bin:$PATH
如果您通过 Github checkout 安装
rbenv
,则 rbenv
可执行文件应存储在 ~/.rbenv/bin
中。
详情请参阅github安装文档。
如果缺少,请将
~/.rbenv/bin
添加到您的路径 PATH
。
# in ~/.zshrc
export PATH=$HOME/.rbenv/bin:$PATH
请致电
rbenv
来验证 which rbenv
是否在您的路径中。
安装路径应该返回。
将 ruby
shims
添加到您的路径中。
# in ~/.zshrc
eval "$(rbenv init -)"
您还可以直接添加
eval "$(rbenv init -)"
文件夹,而不是 shims
命令。
# in ~/.zshrc
export RBENV_ROOT=$HOME/.rbenv
export PATH=$RBENV_ROOT/shims:/versions:$PATH
您还可以运行
rbenv-doctor
提到的脚本here,
检查您的安装。
我也遇到了同样的问题... 当我运行 ruby 或 rbenv 时,出现此错误“找不到命令”
试试这个:
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshenv
echo 'eval "$(rbenv init - zsh)"' >> ~/.zshenv
echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.zshenv
我也有同样的错误。我可以运行
which rbenv
和 rbenv
就很好,但无论如何我都会得到 command not found: rbenv
。问题是我的 eval "$(rbenv init -)"
中有 ~/.zshenv
而不是我的 ~/.zshrc
文件。您仍然可以将 rbenv
的路径添加到 $PATH
内的 ~/.zshenv
中,以使其正常工作。