grunt-contrib-clean v2.0.1
Clean files and folders
Getting Started
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-contrib-clean --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-contrib-clean');
This plugin is designed to work with Grunt 0.4.x and newer. If you're still using grunt v0.3.x it's strongly recommended that you upgrade, but in case you can't please use v0.3.2.
Clean task
Run this task with the grunt clean
command.
Task targets, files and options may be specified according to the grunt Configuring tasks guide.
Due to the destructive nature of this task, always be cautious of the paths you clean.
Options
force
Type: Boolean
Default: false
This overrides this task from blocking deletion of folders outside current working dir (CWD). Use with caution.
no-write
Type: Boolean
Default: false
Will not actually delete any files or directories.
If the task is run with the --verbose
flag, the task will log messages of what files would have be deleted.
Note: As this task property contains a hyphen, you will need to surround it with quotes.
Usage Examples
There are three formats you can use to run this task.
Short
clean: ['path/to/dir/one', 'path/to/dir/two']
Medium (specific targets with global options)
clean: {
build: ['path/to/dir/one', 'path/to/dir/two'],
release: ['path/to/another/dir/one', 'path/to/another/dir/two']
},
Long (specific targets with per target options)
clean: {
build: {
src: ['path/to/dir/one', 'path/to/dir/two']
}
}
"Compact" and "Files Array" formats support a few additional properties which help you deal with hidden files, process dynamic mappings and so on.
Globbing Patterns
Although documented in the Grunt Docs, here are some globbing pattern examples to achieve some common tasks:
clean: {
folder: ['path/to/dir/'],
folder_v2: ['path/to/dir/**'],
contents: ['path/to/dir/*'],
subfolders: ['path/to/dir/*/'],
css: ['path/to/dir/*.css'],
all_css: ['path/to/dir/**/*.css']
}
folder
: Deletes thedir/
folderfolder_v2
: Deletes thedir/
foldercontents
: Keeps thedir/
folder, but deletes the contentssubfolders
: Keeps the files inside thedir/
folder, but deletes all subfolderscss
: Deletes all*.css
files inside thedir/
folder, excluding subfoldersall_css
: Deletes all*.css
files inside thedir/
folder and its subfolders
Skipping Files
// Deletes all .js files, but skips min.js files
clean: {
js: ['path/to/dir/*.js', '!path/to/dir/*.min.js']
}
Options
Options can be specified for all clean
tasks and for each clean:target
.
####### All tasks
// Prevents all targets from deleting any files
clean: {
options: {
'no-write': true
},
build: ['dev/build'],
release: ['dist']
}
####### Per-target
// Will delete files for `build` target
// Will NOT delete files for `release` target
clean: {
build: ['dev/build'],
release: {
options: {
'no-write': true
},
src: ['dist']
}
}
Release History
- 2022-04-15βββv2.0.1βββUpdate all dependencies. Requires node.js > 12.
- 2018-09-08βββv2.0.0βββUpdate all dependencies. Drop Node.js < 6 support.
- 2017-04-12βββv1.1.0βββUpdate grunt to 1.0.0. Updates to docs and changelog. Update internal modules.
- 2016-02-15βββv1.0.0βββDrop support for Node.js v0.8. Grunt peer dependency tagged
>= 0.4.5
. Dependency updates. - 2015-11-13βββv0.7.0βββDependency updates.
- 2014-07-27βββv0.6.0βββLess verbose output. README updates.
- 2013-07-15βββv0.5.0βββUse rimraf directly, version 2.2.1 to fix issue on Windows. Add
no-write
option to mimicgrunt.file.delete
behavior. - 2013-04-16βββv0.4.1βββCheck if file exists to avoid trying to delete a non-existent file.
- 2013-02-15βββv0.4.0βββFirst official release for Grunt 0.4.0.
- 2013-01-18βββv0.4.0rc6βββUpdating grunt/gruntplugin dependencies to rc6. Changing in-development grunt/gruntplugin dependency versions from tilde version ranges to specific versions.
- 2013-01-09βββv0.4.0rc5βββUpdating to work with grunt v0.4.0rc5. Switching to
this.filesSrc
API. - 2012-12-07βββv0.4.0aβββConversion to grunt v0.4 conventions. Remove Node.js v0.6 and grunt v0.3 support. Add
force
option to bypass CWD check. - 2012-09-23βββv0.3.0βββOptions no longer accepted from global config key.
- 2012-09-10βββv0.2.0βββRefactored from grunt-contrib into individual repo.
Task submitted by Tim Branyen
This is a generated file.