From: Martin DeMello Date: 2005-07-08T04:55:46+09:00 Subject: Re: recursively descend and rename files. Ezra Zygmuntowicz wrote: > Hello list- > Could someone please shed some light on this situation for me? I > have a huge folder of logos that are named all willy nilly with weird > characters and spaces. I need to recursively descend through all of > these folders and rename each image so the names only contain [a- > z0-9.-]. That part is fine I already have the regex ready to do this. > I need to know how to rename these files as I recurse through the > directory tree. I have this code so far: > > path = "/Volumes/Users/ez/LOGOS" > files = [] > require 'find' > Find.find(path) do |file| > files << file if file=~ /.eps$/ > end > > > > This leaves me with an array of good filenames but they have their > complete path as well. What I need help with is for each file, pul > just the file name out of the path, do some gsub's on it and then > rename it with the output of the gsubs. So after all is said and done > the original files will be renamed to be compliant with the regexes I > run on each one. > > Can some one please point me in the right direction? Check out the FileUtils module for the OS stuff like copying and moving, and File.basename for the path splitting. martin