コマンドラインオプションの解析
ruby でコマンドライン引数の解析をする場合は、optparse を使えばいい。
require 'optparse' opts = OptionParser.new # -a オプションがしてされているかどうかの判定 opts.on("-a") {|v| puts v } #=> true # -l --long オプション指定時 opts.on("-l", "--long") {|v| puts v } #=> true # -m [OPT] --mmm=OPT 指定時 opts.on("-m OPT", "--mmm OPT") {|v| puts v } #=> OPTの値 optsparse!
opts.on でオプションが指定された時のコードを記述する。また、オプションに値を渡す場合は、opts.on の引数にオプションと値を記述すればよい。
また、opts.on で記述した内容は opts.parse した時点で評価される。破壊的メソッド(parse!)を指定した場合、parse! を実行後 ARGV からオプションの記述が削除される。