require 'optparse' params = ARGV.getopts('abc:d:AB:C', 'alpha', 'brabo:', 'charlie:', 'delta:delta') p params $ ruby getoptstest.rb -a -don --charlie Check {"a"=>true, "b"=>false, "c"=>nil, "d"=>"on", "A"=>false, "B"=>nil, "C"=>false, "alpha"=>false, "brabo"=>nil, "charlie"=>"Check", "delta"=>"delta"} ARGV.getopts の第1引数がショートネームの指定、それ以降がロングネームの指定です。 キーはシンボルではなく文字列です。シンボルにしたい場合には ARGV.getopts(…) の部分