Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 'use strict'
- const { promisify } = require('util')
- const { rmdir, readdir, stat, unlink } = require('fs')
- const path = require('path')
- const rmdirAsync = promisify(rmdir)
- const readdirAsync = promisify(readdir)
- const statAsync = promisify(stat)
- const unlinkAsync = promisify(unlink)
- async function rmd (dir) {
- let paths = await readdirAsync(dir)
- let removals = paths.map(async p => {
- let current = path.join(dir, p)
- let stat = await statAsync(current)
- if (stat.isDirectory()) {
- await clean(current)
- } else {
- await unlinkAsync(current)
- }
- })
- await Promise.all(removals)
- await rmdirAsync(dir)
- }
- module.exports = rmd
Add Comment
Please, Sign In to add comment