getopts(short_opt, *long_opt) -> Hash
[permalink][rdoc][edit]-
指定された short_opt や long_opt に応じて自身をパースし、結果を Hash として返します。
コマンドラインに - もしくは -- を指定した場合、それ以降の解析を行ないません。
- [PARAM] short_opt:
- ショートネームのオプション(-f や -fx)を文字列で指定します。オプションが -f と -x の 2つの場合は "fx" の様に指定します。ここでオプションがないときは空文字列を指定します。オプションが引数をとる場合は直後に ":" を付けます。
- [PARAM] long_opt:
- ロングネームのオプション(--version や --bufsize=512)を文字列で指定をします。オプションが引数をとる場合は後ろに ":" を付けます。オプションの引数のデフォルト値を ":" の直後に指定することができます。例えば、"bufsize:1024" となります。
- [EXCEPTION] OptionParser::ParseError:
- 自身のパースに失敗した場合、発生します。実際は OptionParser::ParseError のサブクラスの例外になります。
require 'optparse' params = ARGV.getopts("ab:", "foo", "bar:", "bufsize:1024") p params
# 実行結果 $ ruby t.rb -b 1 --foo --bar xxx -- -a {"bufsize"=>"1024", "a"=>false, "b"=>"1", "foo"=>true, "bar"=>"xxx"} # "a"=>false であることに注意。