Method: Sys#delete_all

Defined in:
lib/carat-dev/misc/sys.rb

#delete_all(*wildcards) ⇒ Object

Recursively delete all files and directories matching wildcard.



112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# File 'lib/carat-dev/misc/sys.rb', line 112

def delete_all(*wildcards)
  wildcards.each do |wildcard|
    Dir[wildcard].each do |fn|
	next if ! File.exist?(fn)
	if File.directory?(fn)
 Dir["#{fn}/*"].each do |subfn|
   next if subfn=='.' || subfn=='..'
   delete_all(subfn)
 end
 log "Deleting directory #{fn}"
 Dir.delete(fn)
	else
 log "Deleting file #{fn}"
 File.delete(fn)
	end
    end
  end
end