Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Utilities for using bash from node.js.
branch: master
Failed to load latest commit information.
lib Initial code
test Initial code
.gitignore package.json and gitignore
License Initial readme and license
Readme.md Uniform syntax
index.js Initial code
package.json version 0.0.1

Readme.md

bash

Utilities for using bash from node.js.

API

bash.escape(parameter)

Escapes the given parameter for bash. This is done by escaping all non alpha-numeric / dash characters with a backslash.

Example:

> bash.escape('hello world');
'Hello\\ World'

bash.args(options, prefix, suffix)

Takes a list of options and turns them into an arguments string common to most *nix programs.

Objects are turned into arguments:

> bash.args({a: 1, b: 2}, '--', '=');
'--a=1 --b=2'

Values are escaped:

> bash.args({foo: 'hi you'}, '--', '=');
'--foo=hi\\ you'

Array values turn into multiple arguments:

> bash.args({a: [1, 2]}, '--', '=');
'--a=1 --a=2'

null / true values turn into flags:

> bash.args({a: true, b: null}, '--', '=');
'--a --b'

Alternate suffix / prefix settings:

> bash.args({a: 1, b: 2}, '-', ' ');
'-a 1 -b 2'

options can be an array as well:

> bash.args([{a: 1}, {a: 2, b: 3}] '-', ' ');
'-a 1 -a 2 -b 3'

License

This library is released under the MIT license.

Something went wrong with that request. Please try again.