Ruby 1.9.3 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > ARGF.classクラス > seek

instance method ARGF.class#seek

seek(offset, whence = IO::SEEK_SET) -> 0[permalink][rdoc]

ARGFが現在開いているファイルのファイルポインタを whence の位置から offset だけ移動させます。 offset 位置への移動が成功すれば 0 を返します。

[PARAM] offset:
ファイルポインタを移動させるオフセットを整数で指定します。
[PARAM] whence:
IO#seekを参照
# カレントディレクトリから適当にファイルを選ぶ
ARGV.replace(
  Dir.glob("*").select{|name| FileTest.file?(name)}
)

until ARGF.closed?
  begin
    ARGF.seek(-13, IO::SEEK_END)
    printf "(%s):%s", ARGF.filename, ARGF.readline
  rescue Errno::EINVAL
    printf "Error %s (%s)\n", ARGF.filename, $!.to_s
  end
  ARGF.skip
end
#例
#=> (sample.yaml):d of sample
#=> (test.rb):.skip
#=> (test.rb~):.skip
#=> Error third.txt (Invalid argument - third.txt)
#=> (ugo.yaml):

[SEE_ALSO] IO#seek