我只需要删除目录(多个级别)中的txt文件。我可能会猜测fs-extra可能会... https://github.com/jprichardson/node-fs-extra
但是,如果不指定单个文件名,我将找不到解决方案。
我希望通过以下解决方法...
fse.remove('./desktop/directory/*.txt')
但不幸的是,星号不会全选...因为我可以完成以下操作...
fse.remove('./desktop/directory/sub1/*.txt')
fse.remove('./desktop/directory/sub1/sub2/*.txt')
fse.remove('./desktop/directory/sub1/sub2/sub3/*.txt')
fse.remove('./desktop/directory/sub1/sub2/sub3/sub4/*.txt')
不是我所知道的最干净的...但是这就是我所拥有的。
任何帮助或建议,将不胜感激。谢谢。
答案 0 :(得分:1)
那呢?
fse.remove('./desktop/directory/**/*.txt')
添加**意味着包括所有子目录
答案 1 :(得分:1)
如果您使用的是rimraf,可以尝试一下。
const rimraf = require('rimraf');
rimraf.sync('**/*.txt');
rimraf接受glob作为第一个参数。
如果要异步使用它,甚至可以编写
rimraf('**/*.txt', options, () => {
console.log('deleted')
})
尽管fs-extra内部使用rimraf删除了文件。