ワイルドカードはコマンドラインによって展開されるため、ディレクトリ内の各ファイルのリストが取得されます
C:\working>dir *.txt
05/10/2007 03:24 PM 46,101 config.txt
11/23/2004 11:54 AM 361 tips.txt
2 File(s) 46,462 bytes
もしあなたがそうするなら、
C:\working>ruby -e "puts ARGV" *.txt
config.txt
tips.txt
Ruby は文字列 *.txt を一致するファイル名に変換し、展開された配列を新しい引数として渡します。
optparse の使用:
options = {}
OptionParser.new do |opts|
opts.on("-i", Array, "List files") do |v|
options[:files] = v
end
end.parse!
p options
C:\working> script.rb -i *.txt
印刷されます:
["config.txt","tips.txt"]
options[:files] は文字列の配列になります
http://www.ruby-forum.com/topic/111252