rails rake task - 访问命令行参数变量名称

时间:2013-04-22 11:34:09

标签: ruby-on-rails command-line rake command-line-arguments variable-names

好的,我有以下任务,

namespace :test do
  task :a do |t,args|  
    p ENV.keys
  end 
end

$ rake test:a ARG1 = "me" ARG2 = "my wife"

上面的命令显示一个大数组,即ENV.keys

ENV.keys看起来像这样,

["MANPATH", "SSH_AGENT_PID",........,"BUNDLE_BIN_PATH", "RUBYOPT", "ARG1", "ARG2"]

我只想要“ARG1”和“ARG2”而我不想要“MANPATH”,“RUBYOPT”等等。 (不是“我”和“我的妻子”)。

命令行变量名称。不是价值观。

帮助?

1 个答案:

答案 0 :(得分:0)

以这种方式尝试:

namespace :test do
  task :a, [:param_me, :param_wife] do |t, args|  
    p args.param_me
    p args.param_wife
  end 
end

$ rake "test:a[me, my wife]"

如果参数中有空格,则只需要双引号。