Modulul path din Node.js ofera functii utilitare pentru lucrul cu fisiere si directoare intr-un mod portabil pe multiple sisteme de operare.
Îmbinarea și Rezolvarea Căilor (join vs resolve)
const path = require('path');
// Uneste segmentele si normalizeaza calea rezultata
path.join('/users', 'local', 'bin', '..');
// => '/users/local'
// Rezolva o cale absoluta de la dreapta la stanga fata de cwd
path.resolve('src', 'index.js');
// => '/current/working/dir/src/index.js'
Descompunerea Elementelor din Cale
const fullPath = '/workspace/project/src/main.ts';
path.dirname(fullPath);
// => '/workspace/project/src' // Numele directorului
path.basename(fullPath);
// => 'main.ts' // Numele fisierului cu extensie
path.basename(fullPath, '.ts');
// => 'main' // Numele fisierului fara extensie
path.extname(fullPath);
// => '.ts' // Extensia fisierului
path.parse(fullPath);
// Descompune calea intr-un obiect detaliat
// {
// root: '/',
// dir: '/workspace/project/src',
// base: 'main.ts',
// ext: '.ts',
// name: 'main'
// }
Căi Relative și Normalizare
// Calea relativa de la A la B
path.relative('/data/orandea/test/aaa', '/data/orandea/impl/bbb');
// => '../../impl/bbb'
// Normalizeaza calea si elimina separatori redundanti
path.normalize('/foo/bar//baz/asdf/quux/..');
// => '/foo/bar/baz/asdf'
Separatori Multiplatformă
// Separator de cale: '/' pe POSIX sau '\' pe Windows
path.sep;
// Delimitator variabila PATH: ':' pe POSIX sau ';' pe Windows
path.delimiter;