求教,怎么用异步方式计算一个文件夹下总文件数
如果是同步方式,一个递归很容易解决这个问题,异步方式怎么实现?
同步方式代码:
var fs = require('fs');
var getFileNum = function(fileName) {
var num = 0;
var stats = fs.statSync(fileName);
if (stats.isDirectory()) {
var files = fs.readdirSync(fileName);
for ( var i = 0; i < files.length; i++) {
num += getFileNum(fileName + '\\' + files[i]);
}
} else if (stats.isFile()) {
num += 1;
}
return num;
}
var num = getFileNum('E:\\');
console.log(num);
6 回复
var exec = require('child_process').exec;
exec('find * -type f | wc -l', function(error, stdout, stderr) {
console.log(stdout);
})