From: Robert Klemme Date: 2012-05-16T16:33:36+09:00 Subject: Re: Option Parser with an optional flag/switch for last argument On Tue, May 15, 2012 at 5:03 PM, Neubyr Neubyr wrote: > I am using OptionParser to parse command-line options. I would like to > run a program in following manner: > > $ multiply-by.rb --factor 3 4 > $ 12 > > where last number '4' is an input argument which should not need any > option flag/switch. Any hints on how can it be done? Is it possible with > OptionParser or should I write my own option parser method? This is how I'd do it: require 'optparse' factor = nil OptionParser.new do |opts| opts.on '-f', '--factor=F', Integer, 'Multiplication factor' do |v| factor = v end end.parse! ARGV abort "ERROR: need a factor" unless factor ARGV.each {|v| puts(Integer(v) * factor)} Kind regards robert -- remember.guy do |as, often| as.you_can - without end http://blog.rubybestpractices.com/