Module: FileUtils

Defined in:
lib/winexcel/fileutils_ext/backup_file.rb,
lib/winexcel/fileutils_ext/create_dir_if_missing.rb

Class Method Summary collapse

Class Method Details

.createDirIfMissing(dir) ⇒ Object

recursively create directories of a path given as argument accepts absolute paths as well as relative ones



8
9
10
11
12
13
14
15
# File 'lib/winexcel/fileutils_ext/create_dir_if_missing.rb', line 8

def self.createDirIfMissing(dir)
  if dir.unempty?
    unless File.directory?(dir)
      createDirIfMissing(File.dirname(dir))
      Dir.mkdir(dir)
    end
  end
end

.moveFileToBackupDir(sourceFile, backupDir = nil) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/winexcel/fileutils_ext/backup_file.rb', line 5

def self.moveFileToBackupDir(sourceFile, backupDir=nil)
  fileDir = File.dirname(sourceFile)
  fileName = File.basename(sourceFile)
  backupDir = fileDir + '/BACKUP/' if not backupDir
  targetFileName = fileName
  targetFile = ''
  i = 0
  begin
    targetFile = backupDir + targetFileName
    raise if File.exist?(targetFile)
  rescue
    i = i + 1
    targetFileName = fileName[0..fileName.length-File.extname(fileName).length-1] + "_#{i}" + File.extname(fileName)
    retry
  end
  createDirIfMissing File.dirname(targetFile)
  FileUtils.mv(sourceFile, targetFile)
end