IO::Tail for Ruby¶ ↑
Description¶ ↑
This is a small ruby library that allows it to “tail” various IOs in Ruby, including following a file, that still is growing like the unix command ‘tail -f’ can.
Download¶ ↑
The latest version of IO::Tail (io-tail) can be found at
github.com/octplane/ruby-io-tail
Online Documentation should be located at
rubydoc.info/github/octplane/ruby-io-tail/
Installation¶ ↑
To install io-tail via its gem type:
# gem install io-tail
To install from the source repository, just type into the command line as root:
# rake install
Usage¶ ↑
File::Tail is a module in the File class. A lightweight class interface for logfiles can be seen under File::Tail::Logfile.
Direct extension of File objects with File::Tail works like that:
File.open(filename) do |log| log.extend(File::Tail) log.interval = 10 log.backward(10) log.tail { |line| puts line } end
It’s also possible to mix File::Tail in your own File classes (see also File::Tail::Logfile):
class MyFile < File include File::Tail end log = MyFile.new("myfile") log.interval = 10 log.backward(10) log.tail { |line| print line }
The forward/backward method returns self, so it’s possible to chain methods together like that:
log.backward(10).tail { |line| puts line }
A command line utility named rtail, that uses File::Tail is provided as well.
Documentation¶ ↑
To create the documentation of this module, type
$ rake doc
and the API documentation is generated.
In the examples direcotry is a small example of tail and pager program that use this module. You also may want look at the end of file/tail.rb for a little example.
Author¶ ↑
Pierre Baillet pierre@baillet.name
Florian Frank flori@ping.de
License¶ ↑
This is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 as published by the Free Software Foundation: www.gnu.org/copyleft/gpl.html