brutaler
@brutaler

Копирование директории в node.js?

Как правильно скопировать директорию на сервере с помощью node.js?
  • Вопрос задан
  • 7674 просмотра
Пригласить эксперта
Ответы на вопрос 4
blo
@blo
инженер-программист
как вариант для *nix
var exec = require('child_process').exec;
exec('cp -r /path/to/dir1 /path/to/dir2', function(error, stdout, stderr){...})
Ответ написан
mark_ablov
@mark_ablov
fs.readdir и для каждого файла — fs.createReadStream / fs.createWriteStream / util.pump
Ответ написан
kashey
@kashey
Программирую большую половину жизни
1. запускаем fs.readDir на папку.
2. в колбеке идем и говорим fs.stat на строку ответа
3. в колбеке смотрим файл это или папка. Если папка — то 1. В любом случае сохраняет список папкой и список файлов
4.Когда все готово…
5.создаем нужны папки в нужном месте
6.читаем файлы из исходника и пишем в дестинейшен, тут надо следить что-то колво потоков не зашкалило за max-open-files(100-300)
7.можно еще и за chmodить файлы данными из пункта 2

Все действия асинхронны.
По непонятным причинам работает на несколько порядков быстрее rsync в случае полного переноса данных.
Ответ написан
Комментировать
MarcusAurelius
@MarcusAurelius Куратор тега Node.js
автор Impress Application Server для Node.js
npm install ncp

var ncp = require('ncp').ncp;

ncp(source, destination, function (err) {
    if (err) { return console.error(err); }
    console.log('done!');
});
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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