Мне нужно удалить только текстовые файлы в каталоге (несколько уровней). Рискну предположить, что это возможно с 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')
Не самое чистое, что я знаю... Но это все, что у меня есть.
Любая помощь или предложения по этому поводу будут оценены. Спасибо.
Что насчет этого?
fse.remove('./desktop/directory/**/*.txt')
Добавление ** означает включение всех подкаталогов
Если вы используете rimraf, вы можете попробовать это.
const rimraf = require('rimraf');
rimraf.sync('**/*.txt');
rimraf принимает glob в качестве первого параметра.
Если вы хотите использовать его асинхронно, вы даже можете написать
rimraf('**/*.txt', options, () => {
console.info('deleted')
})
Though fs-extra uses rimraf internally to delete the file.
К сожалению, нет :/ Я пытался удалить этот пример файла, но это не сработало. .......fse.remove('./desktop/directory/**/sample.txt') // не работает......... fse.remove('./desktop /directory/sub1/sample.txt') // сработало