Ruby的optparse示例的简单说明

时间:2018-10-04 17:25:06

标签: ruby command-line optparse

require 'optparse'

options = {}
OptionParser.new do |opts|
  opts.banner = "Usage: example.rb [options]"

  opts.on("-v", "--[no-]verbose", "Run verbosely") do |v|
    options[:verbose] = v
  end
end.parse!

p options
p ARGV

我是从optparse文档页面here中找到的。有人可以用外行的方式解释这个例子吗?我阅读了文档,但是有些部分我不理解。即end.parse!和方法parsepermute之间的区别。

1 个答案:

答案 0 :(得分:1)

end.parse!并不是您想的那样end的某种神奇形式。可以这样写:

option_parser = OptionParser.new do |opts|
  opts.banner = "Usage: example.rb [options]"

  opts.on("-v", "--[no-]verbose", "Run verbosely") do |v|
    options[:verbose] = v
  end
end

option_parser.parse!