nodejs 创建多级目录

765 阅读1分钟
var fs = require('fs')
var path = require('path')

/**
 * 递归创建指定路径
 *
 * @param {string} dir 待创建路径 
 */
function mkdir(dir) {
  if (dir.indexOf(__dirname) < 0) {
    dir = path.join(__dirname, dir)
  }
  
  if (!fs.existsSync(dir)) {
    mkdir(path.parse(dir).dir)
    fs.mkdirSync(dir)
  }
}

// eg.
mkdir('ab/cd/ef')
// mkdir('/ab/cd/ef')
// mkdir('/ab/cd/ef/')
// mkdir('./ab/cd/ef')
// ...