ARGV
を使用して、コマンドライン引数の数や、値を取得することができます。
puts ARGV.size
puts ARGV[0], ARGV[1], ARGV[2]
$ ruby sample.rb AAA BBB
2
AAA
BBB
nil
指定したインデックスに対応するコマンドライン引数が存在しない場合は、nil
を返します。
while arg = ARGV.shift
puts arg
end
ARGV
は配列としてアクセスできるので、Array#shift
メソッドを使って、コマンドライン引数を一つずつ取得することができます。
shift
メソッドは要素が空 ([]
) になると最後に nil
を返すので、上記のように while
ループで列挙できます。
def show_usage()
puts "Usage: #{$0} <InputFile>"
exit(1)
end
show_usage() if ARGV.empty?
$ ruby sample.rb
Usage: sample.rb <InputFile>