【问题标题】:Can I pass a multiline argument to rake task? (Not using ENV vars)我可以将多行参数传递给 rake 任务吗? (不使用 ENV 变量)
【发布时间】:2014-12-10 11:05:16
【问题描述】:

两者

rake some:task["aaa
bbb
ccc"]

rake some:task["aaa\nbbb\nccc"]

失败。

Dose Rake 首先接受多行参数?

【问题讨论】:

  • 我知道如何将多个参数传递给 Rake。我想知道的是如何将多LINE参数传递给Rake。

标签: rake rake-task


【解决方案1】:

这样做:

require 'rake'

task :taskname, [:argument1, :argument2] do |t, args|
  puts "Args are: #{args}"
end

在命令行中:

> rake taskname[1,2]
Args are: {:argument1=>"1", :argument2=>"2"}

【讨论】:

  • 是的,那么我怎样才能多行字符串到例如argument2? rake taskname[1,"a\nb"] 不起作用。
【解决方案2】:

我查阅了代码,发现无法将多个“行”参数发送到 rake 命令。

https://github.com/ruby/rake/blob/86af0ef6d793b85068a44fb3407b23c9c9b09bc7/lib/rake/application.rb#L154

/^some_patterns$/ =~ string.to_s

看起来 rake 命令应该是一行。

【讨论】:

    猜你喜欢
    • 2013-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-23
    • 2016-04-08
    • 1970-01-01
    • 2015-02-14
    相关资源
    最近更新 更多