@xccjh/seeai-cli
Version:
SEEAI通用vue项目脚手架
62 lines (53 loc) • 1.43 kB
JavaScript
const fs = require('fs')
const path = require('path')
function rmdirSync(dir) {
if (fs.existsSync(dir)) {
const files = fs.readdirSync(dir);
files.forEach(function(item){
const item_path = path.join(dir, item);
if (fs.statSync(item_path).isDirectory()) {
rmdirSync(item_path);
}
else {
fs.unlinkSync(item_path);
}
});
fs.rmdirSync(dir);
}
}
/**
* @param { src: String }
* @param { dest: String }
*/
function copyDirSync(src, dest) {
if (!isFileExist(dest)) {
fs.mkdirSync(dest);
}
if (!isFileExist(src)) {
return false;
}
// console.log("src:" + src + ", dest:" + dest);
// 拷贝新的内容进去
const dirs = fs.readdirSync(src);
dirs.forEach(function(item){
const item_path = path.join(src, item);
const temp = fs.statSync(item_path);
if (temp.isFile()) { // 是文件
fs.copyFileSync(item_path, path.join(dest, item));
} else if (temp.isDirectory()){ // 是目录
copyDirSync(item_path, path.join(dest, item));
}
});
}
function isFileExist(path) {
try{
fs.accessSync(path,fs.F_OK);
}catch(e){
return false;
}
return true;
}
module.exports = {
rmdirSync,
copyDirSync
}