node package manager

del

Delete files and folders

del Build Status

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