dir archiver

Compress a whole directory (including subdirectories) into a zip file, with options to exclude specific files, or directories.

11
2
JavaScript

npm license
changelog

Dir Archiver

Compress a whole directory (including subdirectories) into a zip file, with options to exclude specific files, or directories.

Installation

$ npm install dir-archiver

Usage

API

// Require modules.
var DirArchiver = require('dir-archiver');

// Create an array with the files and directories to exclude.
const excludes = ['directory_name', 'file.extension'];

/**
 * Create a dir-archiver object. 
 * @param {string} directoryPath - The path of the folder to archive.
 * @param {string} zipPath - The path of the zip file to create.
 * @param {Boolean} includeBaseDirectory - Includes a base directory at the root of the archive.
 * For example, if the root folder of your project is named "your-project", setting
 * includeBaseDirectory to true will create an archive that includes this base directory.
 * If this option is set to false the archive created will unzip its content to
 * the current directory.
 * @param {array} excludes - A list with the names of the files and folders to exclude.
*/
var archive = new DirArchiver('path/to/directory', 'path/to/desination/zipfile.zip', true, excludes);

// Create the zip file.
archive.createZip();

Command Line Interface

Usage: dir-archiver --src <path-to-directory> --dest <path-to-file>.zip --includebasedir true|false --exclude folder-name file-name.extention

Options:
  --src             The path of the folder to archive.                            [string][required]
  --dest            The path of the zip file to create.                           [string][required]
  --includebasedir  Includes a base directory at the root of the archive.
                    For example, if the root folder of your project is named
                    "your-project", setting this option to true will create
                    an archive that includes this base directory.
                    If this option is set to false the archive created will
                    unzip its content to the current directory.                               [bool]
  --exclude         A list with the names of the files and folders to exclude.               [array]