如何使用不同文件夹和子文件夹中的 Grunt 以及版本号动态重命名文件?



>我有以下结构:

src/
..
..
target/
projecta/
css/
vendor/
bootstrap.css
..
..
d3.min.css
nv.d3.min.css
..
..
js/
app/
js/
controllers/
test.js
..
..
services/
application-service.js
..
..
main.js

我想运行一个繁琐的任务来重命名目标/文件夹和子文件夹中的所有文件,其中包含js,css和html文件。

我尝试使用 grunt-cache-bust,但只有第一级文件夹正在更新,但我需要积极更新 target/内的所有子文件夹

编辑

  • 追加后所需的文件名 - 引导程序-1.0.0.css
  • 我们希望根据上述所需的文件名格式和 NOT 文件夹更新所有要更新的文件
  • 版本号可以从package.json中获取
  • 我们需要在应用程序上更新新添加的文件名的引用 格式

我希望您在这里真正想要的是将构建文件复制到dist文件夹中并在此过程中重命名。 grunt-contrib-copy 将执行此操作,process选项可以以编程方式为您重命名文件。

您可以使用 read-pkg 从package.json获取版本号

因此,您应该能够将这两个部分缝合在一起,以大致实现您的期望。

  1. 制作新的JS文件,您可以在其中步行同步pacakge以获取所有内容 路径递归目录结构
  2. 通过使用路径包,您可以获取从中获取的文件路径解析 步行同步
const filePath=path.resolve( walk sync file path which you already get )
  1. 通过使用 FS,可以重命名文件路径
fs.renameSync(new_file_path, filePath)

然后从咕噜咕噜运行这个JS文件

最新更新