Glen
2/19/2006 3:23:00 AM
I wrote the following empty method as an extension to the builtin Dir
class. It iterates through a directory deleting all files and
directories, leaving the top level directory untouched.
class Dir
def empty()
self.each { |f|
if f !~ /^(\.{1,2})$/
file = File.join(self.path, f)
if File.stat(file).file?
File.delete(file) rescue nil;
elsif File.stat(file).directory?
d = Dir.new(file)
d.empty()
Dir.delete(file) rescue nil;
end
end
}
end
end