簡體   English   中英

RVM / rbenv / 終端 $PATH 錯誤:(eval):18: `PATH=/usr/local/opt/...' 附近的解析錯誤

[英]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_profileopen ~/.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 有一行包含rvmrbenv信息似乎很奇怪

然后,我運行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 文件時,這消除了終端錯誤。

  1. 但是,我不想刪除 rbenv,所以我不確定修復此錯誤的正確方法是什么。

  2. 此外,我也找不到錯誤( /usr/local/opt/ )中列出的路徑。

  3. 既然我不再有 RVM,我應該從 bash_profile bashrc 和 .zshrc 文件中刪除 rvm 行嗎?

看起來以下步驟解決了我的問題:

  1. 從 .zshrc 中刪除了這一行:
eval "$(rbenv init - zsh)"export PATH="/usr/local/opt/ruby/bin:/usr/local/lib/ruby/gems/2.6.10/bin:$PATH"
  1. 從 .bash_profile 中刪除了這一行:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*eval "$(rbenv init -)"
  1. 從 .bashrc 和 .zshrc 中刪除了這兩行:
# 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 中的行同時提到了rvmrbenv (參見上面的原始帖子),但閱讀 rbenv 文檔,結果發現我應該在安裝 rbenv 之前刪除 rvm,所以可能打開了 rvm我安裝 rbenv 時的機器是導致這個混搭的原因。

最后,正如我在原帖中提到的,我已經刪除了 rvm,但是今天我使用以下兩個命令刪除了 rbenv(它是通過 Homebrew 安裝的):

rm -rf `rbenv root`
brew uninstall rbenv

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM