From: Robert Klemme Date: 2013-01-10T18:19:31+09:00 Subject: Re: How to delete the folder contents using Ruby? On Thu, Jan 10, 2013 at 10:01 AM, Arup Rakshit wrote: > Hi, > > Suppose I have an Excel sheet, which has the some numbers say: > > 77787 > 45877 > 78985 so on... > > Now I have an directory called as "D://Filehosting" in windows 7 > machine. under that directory I have some 500 folders, each of them > having 120 files in it. Now I want to delete the contents of each folder > which which are 2 months older from the current date. Now the folders > are arranged something like below: > > D://Filehosting/Document77787 > D://Filehosting/Document45877 .. so on > > Script should take the numbers as mentioned above, and accordingly find > the right directory and accordingly delete the contents.Must check if > the if the folder exists or not before content deletion approach. > > what I have is only the Request number and the base directory > Filehosting. then how would I make Document77787 so on.. on the fly? > > Can it be done using Ruby? Probably. I can't help you with reading the numbers from the Excel sheet but assuming you have those numbers in an Array or Set you could do something like this: require 'pathname' require 'fileutils' DELTA = 2 * 30 * 24 * 60 * 60 base = Pathname "D:/Filehosting" limit = Time.now - DELTA numbers.each do |num| dir = base + "Document#{num}" next unless dir.directory? newest = dir.mtime dir.find do |file| newest = [newest, file.mtime].max end FileUtils.rm_rf dir if newest < limit end Cheers robert -- remember.guy do |as, often| as.you_can - without end http://blog.rubybestpractices.com/