使用node.js上的rimraf删除所有子目录

Nat*_*ova 5 node.js

我有一个目录结构,其中某些文件夹数据有子目录.在某些时候,我希望一次删除所有这些,我已经为node.js 安装了其他很棒的rimraf

我的代码到目前为止:

var dataPath === Path.normalize(__dirname + '/backend/data/');

rimraf(dataPath, function(error) {
    console.log('Error: ', error);
});
Run Code Online (Sandbox Code Playgroud)

我已尝试使用/ backend/data // backend/data /*,但似乎没有做到这一点 - 第一个删除整个数据文件夹,第二个触发错误'无法删除null'

我想我可以扫描主目录,找到所有子文件夹并逐个删除它们,但如果可以使用rimraf或类似的包完成,我宁愿一起去.

Tro*_*ott 5

最简单的解决方案是datarimraf完成删除目录后重新创建目录.根据您的使用情况,可能会引入竞争条件,但我怀疑rimraf在任何情况下都不会出现种族安全问题.

另一个选择是读取目录的内容和rimraf每个目录的内容,但这是更多的工作,并没有避免任何会影响第一个选项的竞争条件.