コマンドライン引数の取得
cmd
$ ruby test.rb hoge foo
ruby
# -*- coding: utf-8 -*-
p ARGV #=> ["hoge", "foo"]
ARGV.each_with_index do |x,i|
puts "ARGV[#{i}] = #{x.inspect}"
end
#=> ARGV[0] = "hoge"
#=> ARGV[1] = "foo"""]""]
標準入力の取得
text.txt ファイルを用意
cmd
$ cat text.txt
a
b
c
$ ruby test.rb text.txt
ruby
#ファイル名取得
p filename = ARGF.filename #=> text.txt
ARGF.each_line do |line|
#ファイル行数
lineno = ARGF.lineno
puts "#{lineno}:#{line}"
end
cmd
# パイプを利用してもOK
$ cat text.txt | ruby test.rb
コメントする