Javascript 使用节点js和fs列出dir、sub dir及其文件
因此,我试图制作一个简单的函数,将列出一个设置目录中的所有文件和文件夹,在我的情况下,这些文件是“攻击模块”,但无论如何,我已经让下面的函数工作了一点,但如果有任何包含文件的子文件夹,它将崩溃Javascript 使用节点js和fs列出dir、sub dir及其文件,javascript,node.js,fs,Javascript,Node.js,Fs,因此,我试图制作一个简单的函数,将列出一个设置目录中的所有文件和文件夹,在我的情况下,这些文件是“攻击模块”,但无论如何,我已经让下面的函数工作了一点,但如果有任何包含文件的子文件夹,它将崩溃 function getAttackModuleFiles(where, name, parentFolder){ var parentFolder = parentFolder console.log('p1 '+parentFolder) sub++ var path = 'admi
function getAttackModuleFiles(where, name, parentFolder){
var parentFolder = parentFolder
console.log('p1 '+parentFolder)
sub++
var path = 'adminPanel/attackModules/'
fs.readdir(where, (err, files) => {
if(err){
console.log(err)
}
files.forEach(name => {
console.log(sub)
var stats = fs.statSync(where+name);
if(stats.isFile() == true){
var dir = path+parentFolder+'/'+name
socket.emit('attackModule','file',name, parentFolder, sub, dir)
}if(stats.isDirectory() == true){
/*
if(sub == 2){
getAttackModuleFiles(path+name+'/',name, name)
//getAttackModuleFiles(path+parentFolder+'/'+name+'/',name, parentFolder)
socket.emit('attackModule','dir',name, name, sub)
}else
if( sub ==1){
*/
getAttackModuleFiles(path+name+'/',name, name)
console.log(name)
socket.emit('attackModule','dir',name, name, sub)
// }
}
});
})
}
我还没有足够的js知识,不知道如何解决这个问题。有人能帮我弄清楚如何无限地列出文件和文件夹吗
var walker = require('walker');
if (process.argv.length <= 2) {
console.log("Usage: " + __filename + " path/to/directory");
process.exit(-1);
}
var path = process.argv[2];
walker(path)
.on('dir', function(dir, stat) {
console.log('Got directory: ' + dir)
})
.on('file', function(file, stat) {
console.log('Got file: ' + file)
})
.on('end', function() {
console.log('All files traversed.')
});
var walker=require('walker');
if(process.argv.length