我希望使用标题#! /usr/bin/ruby
的ruby脚本使用当前使用的rvm版本的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]
如何在不执行系统范围的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]
答案 0 :(得分:29)
如果您执行which ruby
,则会发现RVM的ruby
不在/usr/bin/ruby
。而是使用:
#!/usr/bin/env ruby
这将告诉它查找当前环境中使用的ruby
(基本上是$PATH
)。
您也可以通过ruby
本身执行您的脚本:ruby myscript.rb