Ruby 安装在多个位置。这在 macOS 上正常吗?

Ruby installed in multiple locations. Is this normal on macOS?

我安装了 macOS 版本 10.13.2 以及 brew 和 brew cask。 最近我开始在 ruby 编程,想安装几个新版本的 ruby。有人建议我使用 rvm 来处理 ruby.

的多个版本

如果我 运行 rvm list 我得到以下结果(就 ruby 版本而言这似乎是正确的):

rvm rubies
ruby-2.3.3 [ x86_64 ]    
ruby-2.3.5 [ x86_64 ]    
ruby-2.4.0 [ x86_64 ]
=* ruby-2.5.0 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

然而,当我 运行 which -a ruby 我得到以下信息:

/Users/vimusr/.rvm/rubies/ruby-2.5.0/bin/ruby
/usr/bin/ruby

ruby出现在两个不同的位置是否正常?

其实跟Ruby并没有什么关系。更多关于 shell 和 RVM。 您对 which 使用 -a 选项。 来自男人:

-a List all instances of executables found (instead of just the first one of each).

所以你的情况属于正常情况。您通过 Brew 安装了系统 Ruby。它位于 /usr/bin/ruby.

您还通过 RVM 安装了 Ruby。 RVM 修改 $PATH 环境变量使您能够 运行 RVM 的 Ruby.

更新:

我搞混了。位于 /usr/bin/ruby 的 Ruby 本身随 Mac OS 一起提供,而不是通过 Brew 安装。