【问题标题】:Include files in a command line with Ruby使用 Ruby 在命令行中包含文件
【发布时间】:2010-10-15 22:30:22
【问题描述】:

当运行 ruby​​ 脚本时

ruby some-script.rb

如何在其中动态包含文件(例如配置文件)?

【问题讨论】:

    标签: ruby command-line include


    【解决方案1】:

    如您所见,-r 选项是您的朋友。它也适用于 IRB:

    irb -ropen-uri
    

    会和require 'open-uri'做同样的事情

    FWIW,我需要通过命令行包含的最常见的东西是 ruby​​gems。而且由于较新版本的 ruby​​ 带有内置的 gem,我不想编辑该文件,而是将其包含在测试中。幸运的是,创造宝石的人添加了一点别名糖。

    您可以执行以下操作:

    ruby -rubygems myscript.rb
    

    而不是丑陋的:

    ruby -rrubygems myscript.rb
    

    好的,所以它是一个角色,但认为这是让我更快乐的额外修饰。

    【讨论】:

      【解决方案2】:

      其实我找到了。这是 -r 命令行条目。

      【讨论】:

        【解决方案3】:
         -r <library_name>
        

        这会导致 Ruby 使用 require 加载库。

        -n-p 结合使用时很有用。

        【讨论】:

          【解决方案4】:

          你可以使用:

          require 'some_ruby_file'
          

          在一些脚本.rb 中。它将加载 some_ruby_file.rb。

          【讨论】:

          • 谢谢,但不是我问的。我正在寻找一种在命令行中执行此操作的方法,即不修改脚本。
          【解决方案5】:

          在调用require "somefile.rb" 之前,您必须导航到文件所在的文件夹,或者您必须提供完整路径。例如:require "~/Documents/Somefolder/somefile.rb"

          【讨论】:

            猜你喜欢
            • 2011-03-24
            • 2013-06-27
            • 2013-05-09
            • 2019-07-13
            • 2015-08-13
            • 2019-12-20
            • 2013-12-03
            • 1970-01-01
            相关资源
            最近更新 更多