Tail, start reading at EOF

Hi,

how to alter tail function to start at the end
of the file, not reading the lines already existing in file ? =

File = File.open(ARGV[0])
while File.exists?(file.path)
puts file.gets while !file.eof?
sleep(1)
end

Regards, Gilbert

Hi,

Am Mittwoch, 22. Aug 2007, 18:20:12 +0900 schrieb Rebhan, Gilbert:

how to alter tail function to start at the end
of the file, not reading the lines already existing in file ? =

file.seek 0, IO::SEEK_END

File = File.open(ARGV[0])
while File.exists?(file.path)
puts file.gets while !file.eof?
sleep(1)
end

File#eof? does not work here. When the file has been
extended it still returns true even though File#gets will
return a String object.

Bertram

On Aug 22, 2007, at 6:27 AM, Rebhan, Gilbert wrote:

how to alter tail function to start at the end

end
end

Anything to improve ?

Regards, Gilbert

gem install file-tail

Then look at the rdoc for it. There’s an example that does an
implementation of the Unix tail command. It’s a lot more capable
that what you have here, but if you wanted to start some number of
lines before the EOF, the file-tail gem is really what you want.

-Rob

Rob B. http://agileconsultingllc.com
[email protected]