Delete files and folders
JavaScript
Latest commit b33ee97 Oct 26, 2016 @sindresorhus pin XO
Permalink
Failed to load latest commit information.
.editorconfig tweaks Dec 6, 2015
.gitattributes init Jun 21, 2014
.gitignore init Jun 21, 2014
.travis.yml tweaks Jan 7, 2016
index.js fix XO lint issue Jun 16, 2016
license init Jun 21, 2014
package.json pin XO Oct 26, 2016
readme.md add XO badge Oct 26, 2016
test.js fix XO lint issue Jun 16, 2016

readme.md

del Build Status XO code style

Delete files and folders using globs

Pretty much rimraf with a Promise API and support for multiple files and globbing. It also protects you against deleting the current working directory and above.


🔥 Want to strengthen your core JavaScript skills and master ES6?
I would personally recommend this awesome ES6 course by Wes Bos.


Install

$ npm install --save del

Usage

const del = require('del');

del(['tmp/*.js', '!tmp/unicorn.js']).then(paths => {
    console.log('Deleted files and folders:\n', paths.join('\n'));
});

Beware

The glob pattern ** matches all children and the parent.

So this won't work:

del.sync(['public/assets/**', '!public/assets/goat.png']);

You have to explicitly ignore the parent directories too:

del.sync(['public/assets/**', '!public/assets', '!public/assets/goat.png']);

Suggestions on how to improve this welcome!

API

del(patterns, [options])

Returns a promise for an array of deleted paths.

del.sync(patterns, [options])

Returns an array of deleted paths.

patterns

Type: string, array

See supported minimatch patterns.

options

Type: object

See the node-glob options.

force

Type: boolean
Default: false

Allow deleting the current working directory and outside.

dryRun

Type: boolean
Default: false

See what would be deleted.

const del = require('del');

del(['tmp/*.js'], {dryRun: true}).then(paths => {
    console.log('Files and folders that would be deleted:\n', paths.join('\n'));
});

CLI

See del-cli for a CLI for this module and trash-cli for a safe version that is suitable for running by hand.

License

MIT © Sindre Sorhus