Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Gestión de Directorios en Node.js | Creación de Aplicaciones de Consola con Node.js
Desarrollo Backend con Node.js y Express.js

bookGestión de Directorios en Node.js

Hemos aprendido muchas técnicas de manipulación de archivos a lo largo de nuestra exploración del módulo FileSystem (fs). Sin embargo, los directorios son más que simples lugares para almacenar archivos: ofrecen oportunidades para la organización, el análisis de datos y más.

En este capítulo, profundizaremos en la manipulación de directorios y te guiaremos sobre cómo navegar por directorios, recopilar estadísticas importantes, procesar directorios y crear un script para analizar y mostrar el contenido de los directorios.

📂 Navegación de directorios con fs.readdir

El método fs.readdir lee de manera asíncrona el contenido de un directorio. Devuelve un arreglo de nombres de archivos. Este método puede ser útil para tareas como listar archivos en una carpeta.

Considera un escenario en el que gestionamos extensos contratos legales, escritos y otros documentos relacionados con diferentes casos y clientes. Podríamos crear un sistema que extraiga y liste los nombres de los archivos dentro de la carpeta de cada cliente.

Ejemplo de código: Leer los nombres de los archivos de un directorio

const fs = require("fs").promises;

async function listDirectoryContents(directoryPath) {
  try {
    const files = await fs.readdir(directoryPath);
    console.log("Directory Contents:", files);
  } catch (err) {
    console.error("Error reading directory:", err.message);
  }
}

listDirectoryContents("./docs");

Explicación paso a paso

📊 Obtención de estadísticas de directorios con fs.stat

Los directorios contienen archivos y almacenan información valiosa sobre los atributos de cada archivo.

El método fs.stat recupera de forma asíncrona las estadísticas de un archivo o directorio. Estas estadísticas incluyen el tamaño del archivo, permisos, marcas de tiempo y más.

Obtengamos las estadísticas de cada carpeta dentro de la carpeta docs.

Ejemplo de código: Obtener nombres y estadísticas de directorios

const fs = require("fs").promises;

async function processDirectoryContents(directoryPath) {
  try {
    const files = await fs.readdir(directoryPath);

    const fileStatsPromises = files.map(async (file) => {
      const filePath = `${directoryPath}/${file}`;
      const stats = await fs.stat(filePath);
      return { name: file, stats };
    });

    const fileStats = await Promise.all(fileStatsPromises);
    console.log("Detailed File Information:", fileStats);
  } catch (err) {
    console.error("Error processing directory contents:", err.message);
  }
}

processDirectoryContents("./docs");

Explicación paso a paso

🧐 Momento de Quiz

Pongamos a prueba tus conocimientos sobre el módulo FileSystem (fs) con algunas preguntas relacionadas con la manipulación de directorios.

1. ¿Qué método se puede utilizar para listar el contenido de un directorio?

2. ¿Cuál es el propósito del método fs.stat?

question mark

¿Qué método se puede utilizar para listar el contenido de un directorio?

Select the correct answer

question mark

¿Cuál es el propósito del método fs.stat?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 9

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Awesome!

Completion rate improved to 2.56

bookGestión de Directorios en Node.js

Desliza para mostrar el menú

Hemos aprendido muchas técnicas de manipulación de archivos a lo largo de nuestra exploración del módulo FileSystem (fs). Sin embargo, los directorios son más que simples lugares para almacenar archivos: ofrecen oportunidades para la organización, el análisis de datos y más.

En este capítulo, profundizaremos en la manipulación de directorios y te guiaremos sobre cómo navegar por directorios, recopilar estadísticas importantes, procesar directorios y crear un script para analizar y mostrar el contenido de los directorios.

📂 Navegación de directorios con fs.readdir

El método fs.readdir lee de manera asíncrona el contenido de un directorio. Devuelve un arreglo de nombres de archivos. Este método puede ser útil para tareas como listar archivos en una carpeta.

Considera un escenario en el que gestionamos extensos contratos legales, escritos y otros documentos relacionados con diferentes casos y clientes. Podríamos crear un sistema que extraiga y liste los nombres de los archivos dentro de la carpeta de cada cliente.

Ejemplo de código: Leer los nombres de los archivos de un directorio

const fs = require("fs").promises;

async function listDirectoryContents(directoryPath) {
  try {
    const files = await fs.readdir(directoryPath);
    console.log("Directory Contents:", files);
  } catch (err) {
    console.error("Error reading directory:", err.message);
  }
}

listDirectoryContents("./docs");

Explicación paso a paso

📊 Obtención de estadísticas de directorios con fs.stat

Los directorios contienen archivos y almacenan información valiosa sobre los atributos de cada archivo.

El método fs.stat recupera de forma asíncrona las estadísticas de un archivo o directorio. Estas estadísticas incluyen el tamaño del archivo, permisos, marcas de tiempo y más.

Obtengamos las estadísticas de cada carpeta dentro de la carpeta docs.

Ejemplo de código: Obtener nombres y estadísticas de directorios

const fs = require("fs").promises;

async function processDirectoryContents(directoryPath) {
  try {
    const files = await fs.readdir(directoryPath);

    const fileStatsPromises = files.map(async (file) => {
      const filePath = `${directoryPath}/${file}`;
      const stats = await fs.stat(filePath);
      return { name: file, stats };
    });

    const fileStats = await Promise.all(fileStatsPromises);
    console.log("Detailed File Information:", fileStats);
  } catch (err) {
    console.error("Error processing directory contents:", err.message);
  }
}

processDirectoryContents("./docs");

Explicación paso a paso

🧐 Momento de Quiz

Pongamos a prueba tus conocimientos sobre el módulo FileSystem (fs) con algunas preguntas relacionadas con la manipulación de directorios.

1. ¿Qué método se puede utilizar para listar el contenido de un directorio?

2. ¿Cuál es el propósito del método fs.stat?

question mark

¿Qué método se puede utilizar para listar el contenido de un directorio?

Select the correct answer

question mark

¿Cuál es el propósito del método fs.stat?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 9
some-alt