Listar todos los archivos y carpetas de una ruta especifica en NODEJS
Este código permite listar todos los archivos y carpetas de una ruta especifica, guardando la información en una archivo JSON.
//Listar archivos.
const path = require('path');
const fs = require('fs');
var data=[];
console.log("Buscando...")
function scanDirs(directoryPath){
try{
var ls=fs.readdirSync(directoryPath);
for (let index = 0; index < ls.length; index++) {
const file = path.join(directoryPath, ls[index]);
var dataFile =null;
try{
dataFile =fs.lstatSync(file);
}catch(e){}
if(dataFile){
data.push(
{
path: file,
isDirectory: dataFile.isDirectory(),
length: dataFile.size
});
if(dataFile.isDirectory()){
scanDirs(file)
}
}
}
}catch(e){}
}
scanDirs('/ruta/a/listar');
const jsonString = JSON.stringify(data);
fs.writeFile('./resultado.json', jsonString, err => {
if (err) {
console.log('Error al escribir en el archivo', err)
} else {
console.log('Archivo guardado.')
}
});
Resultado:
[{
"path": "/ruta/a/listar/carpeta1",
"isDirectory": true,
"length": 0
}, {
"path": "/ruta/a/listar/carpeta2",
"isDirectory": true,
"length": 0
}, {
"path": "/ruta/a/listar/documento.txt",
"isDirectory": false,
"length": 0
}, {
"path": "/ruta/a/listar/texto.txt",
"isDirectory": false,
"length": 4
}]
Hola, sabes se lista el error de require is no defined , respecto a la primera linea de tu código, donde define el path, podrías ayudar a resolver dicho problema,por favor?.
ResponderBorrarHola. Podría ser que te falte ejecutar npm install path y luego npm install
BorrarBuena noche, con que comando puedo ejecutar el programa?
Borrar