[英]RVM / rbenv / terminal $PATH error: (eval):18: parse error near `PATH=/usr/local/opt/...'
今天打开我的 Mac(Monterey 版本 12.4)终端时,我注意到以下错误:
(eval):18: parse error near `PATH=/usr/local/opt/...'
我怀疑这与我上周安装和删除 Ruby 版本管理器(RVM - https://rvm.io/ )有关。 当我尝试使用 RVM 安装 Ruby 2.6.1 时,安装失败,在进行一些研究后,看起来 RVM 在 Mac 上安装旧版本的 Ruby 时存在问题。 因此,我删除了 RVM 并安装了 rbenv,这很有效。 无论如何,要卸载 RVM,我运行了:
rvm implode
我还从我的 bash_profile 中删除了 RVM 行。 这一切都是上周完成的。
在我的终端中看到这个新错误后,我运行echo $PATH
,它输出以下内容:
/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/francoortega/.rvm/bin
我猜这个 $PATH 的 .rvm 部分可能是问题的一部分。
接下来我运行open ~/.bash_profile
并open ~/.bashrc
,其中包含以下信息:
bash_profile
[[ -s "$HOME/.profile" ]] && source "$HOME/.profile" # Load the default .profile
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*eval "$(rbenv init -)"
.bashrc
# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"
我尝试从这些文件中删除 rvm 信息,但这没有任何效果,所以我撤消了这些删除。 此外,bash_profile 有一行包含rvm和rbenv信息似乎很奇怪
然后,我运行open ~/.zshrc
,输出如下:
# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"
eval "$(rbenv init - zsh)"export PATH="/usr/local/opt/ruby/bin:/usr/local/lib/ruby/gems/2.6.10/bin:$PATH"
我尝试删除 .rvm 行,但没有效果,所以我取消了删除。 然后,令人惊讶的是,当我删除 rbenv 文件时,这消除了终端错误。
但是,我不想删除 rbenv,所以我不确定修复此错误的正确方法是什么。
此外,我也找不到错误( /usr/local/opt/
)中列出的路径。
既然我不再有 RVM,我应该从 bash_profile bashrc 和 .zshrc 文件中删除 rvm 行吗?
看起来以下步骤解决了我的问题:
eval "$(rbenv init - zsh)"export PATH="/usr/local/opt/ruby/bin:/usr/local/lib/ruby/gems/2.6.10/bin:$PATH"
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*eval "$(rbenv init -)"
# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"
我的 .bashrc 和 .zshrc 文件现在是空的,我的 .bash_profile 只包含:
[[ -s "$HOME/.profile" ]] && source "$HOME/.profile" # Load the default .profile
我的终端现在打开,没有任何错误消息。
此外,我发现我的 .bash_profile 中的行同时提到了rvm和rbenv (参见上面的原始帖子),但阅读 rbenv 文档,结果发现我应该在安装 rbenv 之前删除 rvm,所以可能打开了 rvm我安装 rbenv 时的机器是导致这个混搭的原因。
最后,正如我在原帖中提到的,我已经删除了 rvm,但是今天我使用以下两个命令删除了 rbenv(它是通过 Homebrew 安装的):
rm -rf `rbenv root`
brew uninstall rbenv
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.