⚠️Warning:Windows命令行删除文件夹有坑。
场景
使用webpack的时候,配置文件hash之后,每次文件内容更新,就会重新生成js文件放到dist/
下,并且之前生成的js文件不会被覆盖,这样时间久了之后dist/
下的文件会越来越多。
我想在package.json
里加一条build
命令,每次运行yarn build
或者npm run build
的时候,会先删除dist
目录然后再运行webpack
,不过,在尝试使用rm -rf
删除dist/
的时候出错了:
经过搜索和尝试,发现这样写是能用的:
if exist dist rmdir /s /q dist) && webpack |
在package.json
配置:
"scripts": { |
这样就能直接使用yarn build
来启动webpack构建文件了。
📄参数说明:
/s
:递归删除文件夹。如果不加这个参数,文件夹里面有东西的时候删除不了。
/q
:安静模式删除。如果不加这个参数,删除的时候会让你选Yes/No来确认。
参考
Delete a directory and its files using command line but don’t throw error if it doesn’t exist
Microsoft Doc - rmdir
Author: kpt
Permalink: http://kpt.ink/2021/10/12/Windows-rmdir/
文章默认使用 CC BY-NC-SA 4.0 协议进行许可,使用时请注意遵守协议。