Gulp - обрабатывать разрешения только для чтения для файлов dest?
У меня есть файлы изображений с атрибутом read-only
, установленным в исходной папке. Мне нужно скопировать их в папку назначения в большинстве случаев несколько раз в gulpfile.js.
Я пытаюсь скопировать файлы src-to-dest следующим образом:
gulp.task('copy-images', function () {
gulp.src(path_resource_images + '**/*.jpg')
.pipe(gulp.dest(path_app_images));
});
Он работает один раз, когда папка dest в пустом. Но для всех последующих вызовов у меня есть исключение, что файл read-only
в папке dest. Как удалить файл attr read-only
, чтобы делать копии изображений каждый раз, когда я его вызываю?
Ответы
Ответ 1
Вы можете использовать gulp-chmod, чтобы обрабатывать разрешения для ваших файлов.
Итак, если вы хотите установить ваши изображения readable
и writable
для всех, вы можете пойти с чем-то вроде:
var chmod = require('gulp-chmod');
gulp.task('copy-images', function() {
gulp.src(path_resource_images + '**/*.jpg')
.pipe(chmod(666))
.pipe(gulp.dest(path_app_images));
});
Ответ 2
Пропустив атрибут options. Задайте значение mode
, чтобы указать разрешение для любых папок, которые необходимо создать в качестве вывода.
gulp.dest("destination-path-here", {"mode": "0777"})
приветствия: -)
Ответ 3
rimraf можно использовать, чтобы избежать проблем с разрешениями TFS (удаляя файлы назначения перед копированием файлов)
var rimraf = require("rimraf");
gulp.task("images_clean", function (cb) {
rimraf(imagesDest, cb);
});