/
replace string in files and rename files

replace string in files and rename files

class TemplateReplacer
  def self.replace(dir, target, replacement)
    Dir.foreach(dir) do |entry|
      if !entry[0..1].include? '.'
        newfilename = entry.sub(target, replacement)
        File::rename(dir + entry,dir + newfilename)
        File.open(dir + newfilename) do |fr|
          buffer = fr.read.gsub(target, replacement)
          File.open(dir + newfilename, "w") { |fw| fw.write(buffer) }
        end
      end
    end
  end
end