Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > library optparse > class OptionParser > permute
permute(argv) -> [String]
permute(*args) -> [String]
与えられた argv をパースします。 オプションではないコマンドの引数(下の例で言うと somefile)があってもパースを中断しません。 argv からオプションを取り除いたものを返します。
下の例で言うと、order と違いコマンドの引数 somefile よりも後ろにオプションを置くことが できます。
例:
$ cat opt.rb require 'optparse' opt = OptionParser.new opt.on('-a [VAL]') {|v| p :a } opt.on('-b ') {|v| p :b } opt.permute!(ARGV) p ARGV $ ruby opt2.rb -a foo somefile -b :a :b ["somefile"]