Introduction to Globby
Globby is a versatile and powerful utility for file path matching in Node.js.
It simplifies and enhances file handling operations by providing an intuitive API.
This guide will walk you through the various APIs offered by Globby and provide
practical code examples to help you leverage its full potential.
Installation
npm install globby
Basic Usage
const globby = require('globby');
(async () => {
const paths = await globby(['*.js', '!exclude.js']);
console.log(paths);
})();
Globby API Examples
globby.sync
The globby.sync
function provides synchronous file matching.
const globby = require('globby');
const paths = globby.sync(['*.js', '!exclude.js']);
console.log(paths);
globby.stream
The globby.stream
method returns a readable stream of file paths.
const globby = require('globby');
(async () => {
for await (const path of globby.stream(['*.js', '!exclude.js'])) {
console.log(path);
}
})();
globby.generateGlobTasks
The globby.generateGlobTasks
method allows you to generate tasks for advanced custom usage.
const globby = require('globby');
const tasks = globby.generateGlobTasks(['*.js', '!exclude.js']);
for (const task of tasks) {
console.log(task.pattern, task.options);
}
globby.hasMagic
The globby.hasMagic
method detects if the pattern contains special globbing characters.
const globby = require('globby');
const hasMagic = globby.hasMagic('*.js');
console.log(hasMagic); // true
Practical Example Application
Here is an example of a practical application that uses Globby APIs.
const globby = require('globby');
const fs = require('fs');
const path = require('path');
(async () => {
const paths = await globby(['*.js', '!exclude.js']);
for (const filePath of paths) {
const content = fs.readFileSync(filePath, 'utf-8');
console.log(\`Content of \${filePath}:\n\${content}\`);
}
})();
By using Globby, we have efficiently listed, read, and processed all JavaScript files in a directory, excluding certain files as needed.
Hash: aee62905a3c2e4ceb41390f33fd3636d1dd0452576e65f76a585eaa4ed08a0e5