Skip to content

Latest commit

 

History

History
29 lines (25 loc) · 907 Bytes

README.md

File metadata and controls

29 lines (25 loc) · 907 Bytes

shell-parser

Build Status npm

Parses a string similarly to how POSIX shells parse command lines into arguments, and returns an array of strings that correspond to the parsed arguments. Quoting and escaping are supported.

const shellParser = require('shell-parser');

Examples

> shellParser('ab cd ef');
[ 'ab', 'cd', 'ef' ]
> shellParser('ab "cd ef"');
[ 'ab', 'cd ef' ]
> shellParser('a "" b');
[ 'a', '', 'b' ]
> shellParser("'a'\\''b'");
[ 'a\'b' ]
> shellParser('a "bc');
Thrown:
Error: Unterminated quote: "
    at quoted (/home/chris/dev/shell-parser/index.js:47:19)
    at shellParser (/home/chris/dev/shell-parser/index.js:88:18)