node.js 递归删除文件夹下奇数文件
2018-10-19 本文已影响8人
悟空弜厸
var fs = require("fs");
var path = require("path");
fileDisplay("./3", ".jpg");
function fileDisplay(filePath, postfix) {
//根据文件路径读取文件,返回文件列表
fs.readdir(filePath, function(err, files) {
if (err) {
console.warn(err);
} else {
//遍历读取到的文件列表
files.forEach(function(filename) {
var $filename = filename.split(".");
//获取当前文件的绝对路径
var filedir = path.join(filePath, filename);
//根据文件路径获取文件信息,返回一个fs.Stats对象
fs.stat(filedir, function(eror, stats) {
if (eror) {
console.warn("获取文件stats失败");
} else {
var isFile = stats.isFile(); //是文件
var isDir = stats.isDirectory(); //是文件夹
if (isFile) {
if (($filename && $filename[0]) % 2 !== 0) {
fs.unlink(
filePath + '/' + ($filename[0]) + postfix,
function(err) {
if (err) throw err;
console.log("成功");
}
);
}
}
if (isDir) {
fileDisplay(filedir,postfix); //递归,如果是文件夹,就继续遍历该文件夹下面的文件
}
}
});
});
}
});
}