首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用模板重命名图像?

如何用模板重命名图像?
EN

Stack Overflow用户
提问于 2022-06-23 13:35:15
回答 1查看 69关注 0票数 0

我有不同标题的图片:

  1. !test.png
  2. 1101.png
  3. 12345.jpg
  4. image3.jpg
  5. image4.jpg
  6. image5.jpg
  7. image6.jpg
  8. image7.jpg
  9. test_test.png
  10. test.jpg
  11. test2.png

我需要有下一个标题的图片:

  1. 101.png
  2. 102.png
  3. 103.jpg
  4. 104.png
  5. 105.png
  6. 106.jpg
  7. 107.jpg
  8. 108.jpg
  9. 109.jpg
  10. 110.jpg
  11. 111.png

示例: 101.png = "1“+ "01.png”或"01.jpg",其中:

  • 1”是我在控制台中输入的变量,当我键入gulp命令(gulp 1)
  • 01..11.png”(或“01..11.jpg”)只是按升序排列的图像的名称

)时。

我有这样的代码,gulpfile.js:

代码语言:javascript
复制
import gulp from 'gulp';
import rename from 'gulp-rename';
import del from 'del';

const deleteImages = () => {
  return del(['build',], {force:true});
}

const renameImages = () => {
    return gulp.src('src/images/*.{jpg,jpeg,png,gif,wepb}')
    .pipe(rename({
      // code
    }))
    .pipe(gulp.dest('build'))
}

gulp.task('default', gulp.series(deleteImages, renameImages));

package.json:

代码语言:javascript
复制
{
  "name": "gulp-rename-images",
  "description": "Task for gulp",
  "version": "0.0.1",
  "license": "MIT",
  "main": "gulpfile.js",
  "type": "module",
  "devDependencies": {
    "gulp": "^4.0.2",
    "gulp-rename": "^2.0.0",
    "del": "^6.1.0"
  }
}

我的结构:

EN

回答 1

Stack Overflow用户

发布于 2022-06-24 19:22:25

我有这个代码,gulpfile.js:

代码语言:javascript
复制
import gulp from 'gulp';
import rename from 'gulp-rename';
import del from 'del';
import yargs from 'yargs';
import { hideBin } from 'yargs/helpers'

const argv = yargs(hideBin(process.argv)).argv

const deleteImages = () => {
  return del(['build',], {force:true});
}

const renameImages = () => {
  var arg = argv.arg
  var index = 1
  return gulp.src('src/images/*.{jpg,jpeg,png,gif,wepb}')
  .pipe(rename(function (path) {
    if (index <= 9) {
      path.basename = arg + '0' + (index++)
    } else {
      path.basename = arg + '' + (index++)
    }
    return path;
 }))
  .pipe(gulp.dest('build'))
}

gulp.task('default', gulp.series(deleteImages, renameImages));

packgage.json:

代码语言:javascript
复制
{
  "name": "gulp-rename-images",
  "description": "Task for gulp",
  "version": "0.0.1",
  "license": "MIT",
  "main": "gulpfile.js",
  "type": "module",
  "devDependencies": {
    "del": "^6.1.0",
    "gulp": "^4.0.2",
    "gulp-rename": "^2.0.0",
    "yargs": "^17.5.1"
  }
}

在控制台中,我写道:

代码语言:javascript
复制
gulp --arg 1

有没有更漂亮的解决方案?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72731099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档