如何使用gulp imagemin替换原始文件

如何使用gulp imagemin替换原始文件,gulp,gulp-imagemin,Gulp,Gulp Imagemin,我需要设置一个gulp任务来优化目录中的图像文件,但由于这是一个现有站点,所以我无法更改输出目录。换句话说,我需要优化图像来替换现有图像 我在谷歌上搜索了一下,阅读了GulpImagemin的文档,甚至尝试使用shell来实现,但都没有成功 一定有办法做到这一点,但到目前为止,我还没有在互联网上找到如何做到这一点的证据。我希望SO的好人能在这方面帮助我: 这是我的密码: var gulp = require('gulp'); var imagemin = require('gulp-image

我需要设置一个gulp任务来优化目录中的图像文件,但由于这是一个现有站点,所以我无法更改输出目录。换句话说,我需要优化图像来替换现有图像

我在谷歌上搜索了一下,阅读了GulpImagemin的文档,甚至尝试使用shell来实现,但都没有成功

一定有办法做到这一点,但到目前为止,我还没有在互联网上找到如何做到这一点的证据。我希望SO的好人能在这方面帮助我:

这是我的密码:

var gulp = require('gulp');

var imagemin = require('gulp-imagemin');
var pngcrush = require('imagemin-pngcrush');

var paths = {
  files: './webroot/sites/files/**',
  filesDest: './webroot/sites/files',
};

gulp.task('files', function() {
  'use strict';

  // Minify all images
  return gulp.src(paths.files, {base: './webroot/sites/files'})
    .pipe(imagemin({
    progressive: true,
    svgoPlugins: [{removeViewBox: false}],
    use: [pngcrush()]
  }))
  .pipe(gulp.dest(paths.filesDest));
});

gulp.task('default', ['files']);

正如Delapouite所说,这段代码正在运行,我只是错误地检查了它。

我成功地使用您的gulpfile在我的工作站上运行了它。你检查过你的图像的chmod了吗?它们可以是只读的。你说得对@Delapouite,它正在工作!我用du-sh来跟踪下降,但颗粒度不足以看到变化。如果我只使用du-s,我会看到减少。谢谢你的精神检查!