Рубрики
Без рубрики

Модуль пути к узлу

Модуль пути Node.js предоставляет полезные функции для взаимодействия с путями файлов

Модуль 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/”