/delete-empty

Recursively delete all empty folders in a directory and child directories.

Primary LanguageJavaScriptMIT LicenseMIT

delete-empty NPM version NPM downloads Build Status

Recursively delete all empty folders in a directory and child directories.

Install

Install with npm:

$ npm install delete-empty --save

Usage

var deleteEmpty = require('delete-empty');

API

Given the following directory structure, the highlighted directories would be deleted.

foo/
└─┬ a/
- ├── aa/
  ├─┬ bb/
  │ └─┬ bbb/
  │   ├── one.txt
  │   └── two.txt
- ├─┬ cc/
- │ └── ccc/
- ├ b/
- └ c/

async

deleteEmpty('foo/', function(err, deleted) {
  console.log(deleted);
  //=> ['foo/aa/', 'foo/a/cc/', 'foo/b/', 'foo/c/']
});

sync

deleteEmpty.sync('foo/');

As with the async method, an array of deleted directories is returned, in case you want to log them out or provide some kind of feedback to the user.

var deleted = deleteEmpty.sync('foo/');
console.log(deleted);
//=> ['foo/aa/', 'foo/a/cc/', 'foo/b/', 'foo/c/']

Related projects

You might also be interested in these projects:

  • copy: Copy files or directories using globs. | homepage
  • delete: Delete files and folders and any intermediate directories if they exist (sync and async). | homepage
  • fs-utils: fs extras and utilities to extend the node.js file system module. Used in Assemble and… more | homepage
  • matched: Adds array support to node-glob, sync and async. Also supports tilde expansion (user home) and… more | homepage

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Building docs

Generate readme and API documentation with verb:

$ npm install verb && npm run docs

Or, if verb is installed globally:

$ verb

Running tests

Install dev dependencies:

$ npm install -d && npm test

Author

Jon Schlinkert

License

Copyright © 2016, Jon Schlinkert. Released under the MIT license.


This file was generated by verb, v0.9.0, on March 24, 2016.