From: Brian Green Date: 2008-09-05T10:51:28+09:00 Subject: How do I quickly search the end of a huge text file? I am trying to create a ruby script that will search a maya ascii file for specific text. The problem I'm running into is that it's running to slow for the system at work. I know that all the information I need is in the last 5% of the text file - but I haven't been able to figure out a way to either jump to near the end, and then start search through lines or even better iterating backwards through the file till I find what I'm looking for... here is the code I'm currently using - which works but slowly - any suggestions for how to speed this up would be greatly appreciated! :D require "FileUtils" require "ftools" def FindRenderLayers (root) layersFile = [] dirLocation = root.gsub(/(\\)$/, '') list = Dir.entries(dirLocation) list.each do |file| if file =~ /\.ma$/ fileName = root + file layersFile.push file File.open(fileName) do |file| while line = file.gets if line =~ /connectAttr (\"renderLayerManager.rlmi\[[0-9]\]\")/ if $1 != "defaultRenderLayer" editedLine = "-" + $1 layersFile.push editedLine end end end end end end return layersFile end root = "C:\\Users\\Brian\\Documents\\Ruby\\" puts FindRenderLayers(root) -- Posted via http://www.ruby-forum.com/.