gulp-替换创建不需要的目录

gulp-replace creating an unwanted directory

我创建了这个简单的 gulp 任务:

gulp.task('default', function () {
  gulp.src(['test.txt'])
    .pipe(replace('aaa', 'bbb'))
    .pipe(gulp.dest('result.txt'))
})

test.txt 源文件与 gulp 文件位于同一目录中。

问题是它正在 result.txt/test.txt 中创建结果文件。

如何让它在没有这个不需要的 result.txt/ 文件夹的情况下创建这个 config.js 文件?

根据文档,gulp.dest 采用目标目录,而不是文件名。

如果你想和你的 gulpfile.js 放在同一个目录下,那么使用 .:

gulp.task('default', function () {
  gulp.src(['test.txt'])
    .pipe(replace('aaa', 'bbb'))
    .pipe(gulp.dest('.'))
});

但是注意,因为这会覆盖原始文件!您不能使用 gulp.dest 重命名文件,因为您需要使用另一个包,例如 gulp-rename 并执行如下操作:

gulp.task('default', function () {
  gulp.src(['test.txt'])
    .pipe(replace('aaa', 'bbb'))
    .pipe(rename('target.txt'))
    .pipe(gulp.dest('.'))
});