jai*_*fps 11 windows macos node.js
我目前在package.json中有以下脚本,用于删除我的bundle文件夹中的所有".js"文件,以便我运行"npm run build".它在开发服务器中运行时工作正常,但在Windows机器上运行时会中断.
{
"scripts": {
"build": "rm bundles/*.js && webpack",
},
}
Run Code Online (Sandbox Code Playgroud)
由于我正在对所有构建文件进行哈希处理,因此我需要在添加新文件之前将它们全部删除,这样我就不会得到一堆旧版本.
是否有适用于Mac和Windows的"rm bundles/*.js"?
hen*_*lst 14
如果您像我一样,不想仅仅为了删除目录而添加 11 个依赖项,则可以使用节点退出代码有条件地运行脚本:
例如删除 ./dist 文件夹
{
"scripts": {
"clean": "npm run clean:win && npm run clean:lin",
"clean:win": "node -e \"if (process.platform === 'win32') process.exit(1)\" || , if exist dist rmdir /Q /S dist",
"clean:lin": "node -e \"if (process.platform !== 'win32') process.exit(1)\" || rm -rf dist",
}
}
Run Code Online (Sandbox Code Playgroud)
npm run clean
Run Code Online (Sandbox Code Playgroud)
Dem*_*ian 10
npm软件包rimraf可在中用于命令行scripts。
首先在本地安装到您的项目中:
$ npm install --save-dev rimraf
Run Code Online (Sandbox Code Playgroud)
然后更新package.json文件中的build脚本:
"scripts": {
"prebuild": "rimraf bundles/*.js",
"build": "webpack"
}
Run Code Online (Sandbox Code Playgroud)
该rimraf命令(而得名rm -rf),删除这些文件。
说明文件:https:
//www.npmjs.com/package/rimraf#cli
rimraf是一个完善的项目,在GitHub上有3,000多秒。
看看shelljs:
ShellJS是Node.js API之上的Unix shell命令的可移植(Windows/Linux/OS X)实现.您可以使用它来消除shell脚本对Unix的依赖性,同时仍保留其熟悉且功能强大的命令.您也可以在全局安装它,这样您就可以从Node项目外部运行它 - 告别那些粗糙的Bash脚本!
还有shelljs/shx,它提供了以下示例:
{
"scripts": {
"clean": "shx rm -rf build dist && shx echo Done"
}
}
Run Code Online (Sandbox Code Playgroud)
替代:
您可能还想看看Gulp或Grunt,这两个都叫做Task Runners.Gulp 清洁干净,Grunt 干净利落.两者都旨在删除文件夹和/或文件.
我们以Grunt为例:
npm i -g grunt-cli到您的系统npm i --save-dev grunt grunt-contrib-cleangruntfile.jsRun Code Online (Sandbox Code Playgroud)module.exports = (grunt) => { 'use strict'; grunt.initConfig({ clean: ['bundles'], }); grunt.loadNpmTasks('grunt-contrib-clean'); grunt.registerTask('default', ['clean']); };
"build": "grunt && webpack"| 归档时间: |
|
| 查看次数: |
2731 次 |
| 最近记录: |