"Kurt Euler" <keuler / portal.com> wrote: > > 2) The following code was recommended to me by Matz some time ago. > What I want to know is, what do I replace <do_stuff_here> with > to copy every file found under "some_directory" to single target directory, > without reproducing the path structure. Result would be a single flat > directory some_target. (Not controlling for possible file duplicate > overwriting for the moment.) > > > for f in Dir.glob("./some_directory/**/*") > File.open(f) { |file| > <do_stuff_here> > }if File.file?(f) > end > syscopy (in 'ftools' lib) can take a directory as its target and copies the source files' basename. #------------ require "ftools" TARGET = 'C:/TEMP/rbcopies' # target directory Dir.mkdir(TARGET) unless File.directory?(TARGET) for f in Dir.glob("./some_directory/**/*") next unless File.file?(f) # # check for exists? / read-only etc. # File.syscopy(f, TARGET) end #------------ daz