Get All Files
A fast parallel stack-based readdir-recursively module with micromatch support.
getAllFiles
If filename
is a file, creates an array containing the file path.
Otherwise creates an array containing the file paths of all files recursively in the given directory.
The array is filtered by the given glob pattern(s) and/or predicate(s) and returned as a promise.
Parameters:
filename
{string}: A path to a file or directory.arr
{string|function|(string|function)[]} (optional): A string glob pattern, a function taking a file path and returning a boolean, or an array of containing any number of of the former two options.opt
{Object} (optional): An options object for the micromatch module.
Examples:
const getAllFiles = require('get-all-files')
getAllFiles('path/to/dir/or/file').then(files => console.log(files))
getAllFiles('path/to/dir/or/file', '*.js', {matchBase: true}).then(files => console.log(files))
getAllFiles(
'path/to/a/dir/or/file',
filename => filename.toLowerCase() === filename
).then(files => console.log(files))
getAllFiles(
'path/to/dir/or/file',
['*.js', 'foo*', filename => filename.toLowerCase() === filename],
{matchBase: true}
).then(files => console.log(files))
Benchmarks
Soon!