【发布时间】:2010-10-15 22:30:22
【问题描述】:
当运行 ruby 脚本时
ruby some-script.rb
如何在其中动态包含文件(例如配置文件)?
【问题讨论】:
标签: ruby command-line include
当运行 ruby 脚本时
ruby some-script.rb
如何在其中动态包含文件(例如配置文件)?
【问题讨论】:
标签: ruby command-line include
如您所见,-r 选项是您的朋友。它也适用于 IRB:
irb -ropen-uri
会和require 'open-uri'做同样的事情
FWIW,我需要通过命令行包含的最常见的东西是 rubygems。而且由于较新版本的 ruby 带有内置的 gem,我不想编辑该文件,而是将其包含在测试中。幸运的是,创造宝石的人添加了一点别名糖。
您可以执行以下操作:
ruby -rubygems myscript.rb
而不是丑陋的:
ruby -rrubygems myscript.rb
好的,所以它是一个角色,但认为这是让我更快乐的额外修饰。
【讨论】:
其实我找到了。这是 -r 命令行条目。
【讨论】:
-r <library_name>
这会导致 Ruby 使用 require 加载库。
与-n 或-p 结合使用时很有用。
【讨论】:
你可以使用:
require 'some_ruby_file'
在一些脚本.rb 中。它将加载 some_ruby_file.rb。
【讨论】:
在调用require "somefile.rb" 之前,您必须导航到文件所在的文件夹,或者您必须提供完整路径。例如:require "~/Documents/Somefolder/somefile.rb"
【讨论】: