From: "dtown22@..." Date: 2007-09-28T07:10:04+09:00 Subject: is there to invoke 'previous' in Find? (or refresh the current path?) I am writing a small script which recursively goes down a dir hierarchy, and when it reaches a set of files, it applies a 3rd party application which modifies those files, and prepends the name with "Mod-". So for example, if i had a directory with only 1 file: C:\myDir \myFile.txt, and I ran the app, I would end up with the following files in c:\myDir myFile.txt Mod-myFile.txt Basically, what i want to do is traverse down the hierarchy, when i reach a set of files, call the app on that directory, then delete the original, and rename the new file so that the "Mod-" is removed. Unfortunately, the Find function doesnt see the newly created file, and thus i cant delete & rename. My code looks something like this: Find.find(startingDir) do |path| if File.directory?(path) next else system("myapp #{path}") puts path if File.basename(path) =~ /^Mod-/ if File.exists?(path.sub('Mod-', '')) File.delete(path.sub('Mod-', '')) end File.rename(path, path.sub('Mod-', '')) end end end I was wondering if there was a way to reset the path one level up (i.e. where "puts path" is above), that way the current directory would be refreshed, and the new files would be recognized. thanks!