count-files

    2.6.2 • Public • Published

    Count Files

    Travis npm

    Count files, directories, and bytes in a directory recursively.

    Ignore files in the count.

    Usage

    In javascript, use it like so:

    var countFiles = require('count-files')
     
    var stats = countFiles(dir, function (err, results) {
      console.log('done counting')
      console.log(results) // { files: 10, dirs: 2, bytes: 234 }
    })
     
    setInterval(function () {
      console.log('current count', stats) // { files: 4, dirs: 1, bytes: 34 }
    }, 500)

    count-files also has a very simple command line tool, use npm install -g count-files to install.

    ❯ count-files ./
    Counting files and directories in...
    /joe/node_modules/count-files
    
    Results:
     Files:  13
     Dirs:   4
     Size:   10 KB
    

    API

    var stats = countFiles(src, [opts], cb) { }

    src can be a directory or a single file path. You can also pass a custom fs, e.g. hyperdrive and path with: {fs: customFs, name: dir} (see tests for examples).

    Callback returns the completed stats: {files, dirs, bytes}.

    Options include:

    opts = {
      ignore: function (file) {
        return match(['**/*.js'], file) // return true to ignore file
      }
      dereference: false // dereference any symlinks
    }

    We find anymatch nice for ignoring files!

    That's all folks!

    Development

    • Run tests! npm test
    • Run performance thingy! npm run perf
    • Yay!

    Some basic performance testing in tests/perf.js and alternate implementations in lib/. I think I chose the fastest but didn't test all situations!

    License

    ISC

    Keywords

    none

    Install

    npm i count-files

    DownloadsWeekly Downloads

    595

    Version

    2.6.2

    License

    ISC

    Last publish

    Collaborators

    • jhand