1. grunt-contrib-clean
Clean files and folders
grunt-contrib-clean
Package: grunt-contrib-clean
Created by: gruntjs
Last modified: Wed, 13 Mar 2024 10:18:38 GMT
Version: 2.0.1
License: MIT
Downloads: 1,501,008
Repository: https://github.com/gruntjs/grunt-contrib-clean

Install

npm install grunt-contrib-clean
yarn add grunt-contrib-clean

grunt-contrib-clean v2.0.0 Build Status

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 was designed to work with Grunt 0.4.x. 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 the dir/ folder
  • folder_v2: Deletes the dir/ folder
  • contents: Keeps the dir/ folder, but deletes the contents
  • subfolders: Keeps the files inside the dir/ folder, but deletes all subfolders
  • css: Deletes all *.css files inside the dir/ folder, excluding subfolders
  • all_css: Deletes all *.css files inside the dir/ 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 mimic grunt.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 file was generated on Fri Apr 15 2022 21:07:19.

RELATED POST

10 Must-Know Windows Shortcuts That Will Save You Time

10 Must-Know Windows Shortcuts That Will Save You Time

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Navigating AWS Networking: Essential Hacks for Smooth Operation

Navigating AWS Networking: Essential Hacks for Smooth Operation

Achieving Stunning Visuals with Unity's Global Illumination

Achieving Stunning Visuals with Unity's Global Illumination

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code