Qiita初投稿〜
Rubyの勉強の為に、単純なtail
をRubyで書いてみた。
プログラム
tail.rb
def tail(lineNo, fileName)
File.open(fileName) do |file|
lines = file.readlines
lines.drop(lines.size - lineNo).each do |line|
puts line
end
end
end
tail(ARGV[0].to_i, ARGV[1])
File.readlinesでファイルの内容を全行読み込んで、
Enumerable.dropを使って最終行から指定した行までの配列を作ってる。
実行結果
$ ruby tail.rb 5 ChangeLog
indent-tabs-mode: t
tab-width: 8
change-log-indent-text: 2
end:
vim: tabstop=8 shiftwidth=2
環境情報
Ruby
$ ruby -v
ruby 2.0.0p648 (2015-12-16 revision 53162) [x86_64-darwin17.4.0]
Mac OS X
$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.13.3
BuildVersion: 17D102