@verycooldev

Как создавать директории рекурсивно?

Какой простой способ создания вложенных директорий?
  • Вопрос задан
  • 209 просмотров
Решения вопроса 2
bingo347
@bingo347 Куратор тега Node.js
Crazy on performance...
https://www.npmjs.com/package/mkdirp - конкретно под Вашу задачу
https://www.npmjs.com/package/fs-extra - расширенная fs
https://www.npmjs.com/package/shelljs - шелл команды в unix стиле кросплатформенно

насчет чистой ноды, модули написаны на ней, никто не мешает сделать самому
делаем по простому, через вызов системной команды:
const cp = require('child_process');
const path = require('path');
const {promisify} = require('util');
const exec = promisify(cp.exec);

function mkdirp(dirPath) {
  return (process.platform === 'win32'
    ? exec(`mkdir ${path.win32.resolve(dirPath)}`) // win версия рекурсивна по умолчанию
    : exec(`mkdir -p ${path.posix.resolve(dirPath)}`)
  );
}


Чуть сложнее, но производительнее, на возможностях модуля fs - можно посмотреть в исходниках той же shelljs: https://github.com/shelljs/shelljs/blob/master/src... или fs-extra: https://github.com/jprichardson/node-fs-extra/blob...
Ответ написан
yarkov
@yarkov
Помог ответ? Отметь решением.
import shell from 'shelljs'

shell.mkdir('-p', 'path/with/children/folders')
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы