del
Delete files and folders using globs
Similar to rimraf, but with a Promise API and support for multiple files and globbing. It also protects you against deleting the current working directory and above.
Support this project and improve your JavaScript skills with this great ES6 course by Wes Bos.
Try his free JavaScript 30 course for a taste of what to expect. You might also like his React and Sublime course.
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 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'));
});
concurrency
Type: number
Default: Infinity
Minimum: 1
Concurrency limit.
CLI
See del-cli for a CLI for this module and trash-cli for a safe version that is suitable for running by hand.
Related
License
MIT