MÓDULO PATH DE NODE.JS: MÉTODOS Y EJEMPLOS

El módulo path de nodeJs es un módulo integrado que facilita el manejo de rutas de archivos de manera compatible con diferentes sistemas operativos, como Windows, macOS y Linux, que utilizan convenciones de rutas distintas. Para usar el módulo path- Primero hay que importarlo con "const path = require('path');" y ya se puede usar con normalidad. El módulo path es especialmente útil para evitar problemas de compatibilidad entre sistemas operativos al trabajar con rutas.

Métodos y Propiedades Principales

  • path.join: Une varios segmentos de ruta en una sola, utilizando el separador adecuado según el sistema operativo.

    const rutaCompleta = path.join('/home', 'usuario', 'docs', 'archivo.txt');
    console.log(rutaCompleta);
    // Salida (Unix-like): /home/usuario/docs/archivo.txt
    // Salida (Windows): \home\usuario\docs\archivo.txt
    
  • path.resolve: Resuelve una secuencia de rutas en una ruta absoluta.

    const rutaAbsoluta = path.resolve('docs', 'archivo.txt');
    console.log(rutaAbsoluta);
    // Salida: /ruta/actual/del/proyecto/docs/archivo.txt
    
  • path.basename: Devuelve el nombre del archivo de una ruta, con la opción de eliminar una extensión específica.

    const nombreArchivo = path.basename('/home/usuario/docs/archivo.txt');
    console.log(nombreArchivo); // Salida: archivo.txt
    console.log(path.basename('/home/usuario/docs/archivo.txt', '.txt')); // Salida: archivo
    
  • path.dirname: Devuelve el directorio padre de una ruta

    const directorio = path.dirname('/home/usuario/docs/archivo.txt');
    console.log(directorio); // Salida: /home/usuario/docs
    
  • path.extname:Devuelve un objeto con las partes de la ruta: raíz, directorio, nombre base, extensión y nombre sin extensión.

    const partesRuta = path.parse('/home/usuario/docs/archivo.txt');
    console.log(partesRuta);
    // Salida: 
    // {
    //   root: '/',
    //   dir: '/home/usuario/docs',
    //   base: 'archivo.txt',
    //   ext: '.txt',
    //   name: 'archivo'
    // }
    
  • path.normalize: Normaliza una ruta, resolviendo referencias como . (directorio actual) y .. (directorio superior).

    const rutaNormalizada = path.normalize('/home/usuario/docs/../archivo.txt');
    console.log(rutaNormalizada); // Salida: /home/usuario/archivo.txt
    
  • path.sep:ropiedad que devuelve el separador de rutas específico del sistema operativo (\ en Windows, / en Unix).

    console.log(path.sep); // Salida: '/' (en Unix) o '\' (en Windows)
    
  • path.delimiter: propiedad que devuelve el delimitador de rutas del sistema operativo (; en Windows, : en Unix), usado en variables de entorno como PATH..

    console.log(path.delimiter); // Salida: ':' (en Unix) o ';' (en Windows)