【发布时间】:2019-09-23 06:34:51
【问题描述】:
我的目录结构如下:
dist
├── a/
├── b/
├── a.md
└── b.md
我想使用 globs 在 rimraf 包的帮助下删除 dist/a 文件夹和 dist/b 文件夹(基本上是所有子文件夹)。
我已经在全球范围内安装了rimraf,所以npm i -g rimraf。
我尝试执行rimraf dist/**、rimraf dist/*、rimraf dist/**/、rimraf dist/**/*,但它完全清除了dist/ 目录中的所有内容。
我知道我可以像rimraf dist/a && rimraf dist/b 一样单独做,但我想使用globs,因为我的 Node 项目中有很多目录。此外,这是 npm 脚本的一部分,但只是举个例子,我做了一个简短的用例 :)
无论如何要跨平台?我还发现了del 包,它与rimraf 非常相似,但也无法让它工作:(
【问题讨论】:
-
您到底想达到什么目标?只想保留 a.md 和 b.md 吗?是否要删除所有子文件夹?还是保留特定的?
-
也许可以试试
rimraf !(dist/*.md) -
@OronBen-David 我想删除所有子文件夹
-
@AnkitAgarwal 谢谢我实际上不知道会有哪些文件扩展名,所以我会尝试
rimraf !(dist/*.*)看看它是否有效。 edit: 刚试过,不行。给出number expected错误。也尝试使用*.md,但也不起作用:( -
@deadcoder0904 是的,您可以尝试一下,如果可行,我会将其发布为其他可能面临相同问题的人的答案
标签: javascript node.js