file-filter

1.0.0 • Public • Published

file-filter

NPM version build status Test coverage

Filter a list of files to including only the unique files, based on content

Install

$ npm install --save file-filter

Usage

var fileFilter = require('file-filter');
 
fileFilter(['file-filter', 'file1.txt', 'duplicateFile1.txt', 'file2.txt']).then(results => {
    // results => {strict: {...}, loose: {...}, unprocessed: {...}}
});

CLI

$ npm install --global file-filter
$ file-filter --help

  Filter a list of files to only the unique files, based on content

  Usage
    $ file-filter [input]
    $ [input] | file-filter

  Options
    -i Invert the results so that it shows you only the duplicates. Default: false
    -s Append the summary about the number of unique files and duplicates. Default: false
    -S Show only the summary about the number of unique files and duplicates. Default: false
    -W By default, the comparisons ignore whitespace. This makes it so that it respects whitespace differences. Default: false
  Examples
    $ file-filter file1.txt duplicateFile1.txt file2.txt
    file1.txt
    file2.txt

  # Assuming we're in a directory that has the same files as above
    $ ls | file-filter
    file1.txt
    file2.txt

API

fileFilter(input)

Returns a Promise that resolves to an object of objects, containing the results of the comparisons.

The object returned is structured like so:

    {
        // Strict contains the result of a strict comparison
        strict: {
            uniques: [...], // Array of strings of the unique filenames
            duplicates: [...], // Array of strings of the duplicate filenames
            files: [{name, hash, content}, ...] // Array of objects containing file name, the file hash and content used for the comparison
        },
 
        // Loose contains the result, but it ignores all whitespace in the comparison
        loose: {
            uniques: [...],
            duplicates: [...],
            files: [...]
        },
 
        // Unprocessed contains two arrays, one for any directories and one for anything else that was passed in but can't be read for whatever reason.
        unprocessed: {
            dirs: [...],
            misc: [...]
        }
    }

input

Required Type: string|Array

This is the list of files to filter. It can be an array of files, or a newline separated string.

License

MIT © Nate Cavanaugh

Readme

Keywords

Package Sidebar

Install

npm i file-filter

Weekly Downloads

4

Version

1.0.0

License

MIT

Last publish

Collaborators

  • natecavanaugh