使用当前本地用户RVM安装的可执行Ruby脚本?

rud*_*ph9 7 ruby rvm

我想要#! /usr/bin/ruby使用当前使用的rvm版本的ruby来执行标题的ruby脚本.我遇到了使用给定版本的问题但在执行脚本时调用了系统ruby.无法为系统上的每个用户安装RVM.

问题:

ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.3.0]

/usr/bin/ruby -v
ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]
Run Code Online (Sandbox Code Playgroud)

如何在不执行系统范围的RVM安装的情况下进行以下操作?

ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.3.0]

ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.3.0]
Run Code Online (Sandbox Code Playgroud)

And*_*all 30

如果你这样做which ruby,你会发现RVM ruby不在于/usr/bin/ruby.而是使用:

#!/usr/bin/env ruby
Run Code Online (Sandbox Code Playgroud)

这将告诉它查找ruby在当前环境中使用的内容(基本上是$PATH).

您也可以通过ruby自己执行脚本:ruby myscript.rb