Модуль path предоставляет множество очень полезных функций для доступа к файловой системе и взаимодействия с ней.
Нет необходимости устанавливать его. Будучи частью ядра узла, его можно использовать, потребовав его:
const path = require('path')Этот модуль предоставляет path.sep , который предоставляет разделитель сегментов пути ( \ в Windows и /|в Linux|macOS), и/|path.delimiter , который предоставляет разделитель пути ( ; в Windows и : в Linux/macOS).
Это путь методы:
- путь.базовое имя()
- путь.имя файла()
- путь.имя расширения()
- путь.Изабсолют()
- путь.присоединиться()
- путь.нормализовать()
- путь.синтаксический анализ()
- путь.относительный()
- путь.разрешить()
путь.базовое имя()
Верните последнюю часть пути. Второй параметр может отфильтровать расширение файла:
require('path').basename('/test/something') //something
require('path').basename('/test/something.txt') //something.txt
require('path').basename('/test/something.txt', '.txt') //something
путь.имя файла()
Возвращает часть пути к каталогу:
require('path').dirname('/test/something') // /test
require('path').dirname('/test/something/file.txt') // /test/something
путь.имя расширения()
Возвращает расширенную часть пути
require('path').extname('/test/something') // ''
require('path').extname('/test/something/file.txt') // '.txt'
путь.Изабсолют()
Возвращает значение true, если это абсолютный путь
require('path').isAbsolute('/test/something') // true
require('path').isAbsolute('./test/something') // false
путь.присоединиться()
Соединяет две или более частей пути:
const name = 'flavio'
require('path').join('/', 'users', name, 'notes.txt') //'/users/flavio/notes.txt'
путь.нормализовать()
Пытается вычислить фактический путь, когда он содержит относительные спецификаторы, такие как . или .. , или двойные косые черты:
require('path').normalize('/users/flavio/..//test.txt') ///users/test.txt
путь.синтаксический анализ()
Анализирует путь к объекту с помощью составляющих его сегментов:
корень: кореньреж.: путь к папке, начинающийся с корневого каталогабаза: имя файла + расширениеимя: имя файлавнутр.: расширение файла
Пример:
require('path').parse('/users/test.txt')результаты в
{
root: '/',
dir: '/users',
base: 'test.txt',
ext: '.txt',
name: 'test'
}путь.относительный()
Принимает 2 пути в качестве аргументов. Возвращает относительный путь от первого пути ко второму на основе текущего рабочего каталога.
Пример:
require('path').relative('/Users/flavio', '/Users/flavio/test.txt') //'test.txt'
require('path').relative('/Users/flavio', '/Users/flavio/something/test.txt') //'something/test.txt'
путь.разрешить()
Вы можете получить расчет абсолютного пути относительного пути, используя path.resolve() :
path.resolve('flavio.txt') //'/Users/flavio/flavio.txt' if run from my home folder
Указав второй параметр, resolve будет использовать первый в качестве основы для второго:
path.resolve('tmp', 'flavio.txt')//'/Users/flavio/tmp/flavio.txt' if run from my home folder
Если первый параметр начинается с косой черты, это означает, что это абсолютный путь:
path.resolve('/etc', 'flavio.txt')//'/etc/flavio.txt'
Оригинал: “https://flaviocopes.com/node-module-path/”