Skip to content

automatically expand globs (cross-platform) for the `process.argv` array (or similar)

License

Notifications You must be signed in to change notification settings

jokeyrhyme/argv-auto-glob.js

Repository files navigation

argv-auto-glob.js npm AppVeyor Status Travis CI Status

automatically expand globs (cross-platform) for the process.argv array (or similar)

What is this?

Popular shells on macOS and Linux automatically expand globs prior to executing commands. However, the default shells on Windows do not.

This library checks a process.argv-like array of strings, detects any globs, and expands the globs. This is very convenient for developing consistent cross-platform CLI tools.

Usage

argvAutoGlob (argv, globOptions)

Example

We execute a Node.js script like so:

  • node path/to/index.js **/*.txt

where our index.js file contains:

#! /usr/bin/env node
const argvAutoGlob = require('argv-auto-glob')

process.argv
// => (Windows) ['.../node', '.../index.js', '**/*.txt']
// => (bash/zsh) ['.../node', '.../index.js', 'example.txt', 'dir/more.txt', ... ]

process.argv = argvAutoGlob(process.argv)

process.argv
// => (all) ['.../node', '.../index.js', 'example.txt', 'dir/more.txt', ... ]

About

automatically expand globs (cross-platform) for the `process.argv` array (or similar)

Resources

License

Stars

Watchers

Forks

Packages

No packages published