読み込んでいるファイルの行数は File#lineno を使えば取得できるのだが、けっこう忘れがち。
data.txt
hoge
huga
piyo
open("data.txt") {|f|
f.each_line do |line|
line.chomp!
puts "#{f.lineno}: #{line}"
end
}
# >> 1: hoge
# >> 2: huga
# >> 3: piyo
f.lines.each_with_index
も使えなくはないが、こちらは1行目を0と数えるので適宜使いわけるといい。
行数取得のために一時変数をループの度にインクリメントしていたような人は是非覚えておこう。