2016-03-30 93 views
0

在这里完成Ruby业余爱好者。在使用Ruby在各种交互式在线编码环境中玩耍之后,我想我会尝试在我的Windows上设置Ruby,就像我设置Python(使用Atom和Terminal-Plus)一样。在过去的3个小时被沮丧和谷歌搜索回答后,我想我会在这里提出我的问题。在Atom或命令shell中运行Ruby脚本

使用Python,我可以节省的Atom文件(test.py),并使用终端-PLUS通过键入执行它:

py -i test.py 

,这将创造一个互动的外壳,我可以调用任何函数我存储在我的测试Python脚本中。我明白了,我可以用做与红宝石类似的事情(为一个测试文件test.rb):

ruby -r test.rb 

但是这会产生以下错误:

C:/Ruby21- x64/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such 
file -- test.rb (LoadError) 
    from C:/Ruby21-x64/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require' 

同样的事情发生,如果我使用cmd提示尝试并执行脚本。我见过的其他问题,像这样的地方的人缺少的关键RubyGem,他们试图打电话,但我test.rb文件是从字面上:

def xyz 
    for i in 1..100 
     puts i 
    end 
end 

我只是试图调用Ruby脚本和能够调用我存储在控制台脚本中的函数,在这里是xyz。

回答

0

-r命令行开关用于use require to load lib as a library before executing

尝试

ruby test.rb 

从该文件所在的目录中,它应该工作。

+0

使用ruby test.rb似乎编译代码,但不会让我的终端处于可以与代码交互或调用我定义的函数的状态。例如,当我键入ruby test.rb时,我的环境不会更改为交互式ruby环境。 – chriswt

+0

要使用预加载的ruby代码运行shell,请使用'irb -r test.rb'。 – mudasobwa