child_process
extensionsnpm install child-process-ext
spawn(command[, args[, options]])
Cross system compliant spawn
(backed by cross-spawn
).
Works exactly same way as node's spawn
with difference that promise is returned that resolves once process exits.
Following properties are exposed on return promise:
child
- child processstdout
- stdout stream (decorated so it can also be used as promise)stderr
- stderr stream (decorated so it can also be used as promise)std
- Merged stdout & stderr stream (decorated so it can also be used as promise)stdoutBuffer
- Buffer that exposes so far written stdout
stderrBuffer
- Buffer that exposes so far written stderrr
stdBuffer
- Buffer that exposes so far written std
Promise resolves with object with three properties:
code
- Exit code of a child processignal
- Signal that terminated the processstdoutBuffer
- Buffer containing gathered stdout
contentstderrBuffer
- Buffer containing gathered stderr
contentstdBuffer
- Buffer containing gathered stderr
contentIf process exits with non zero code, then promise is rejected with an error exposing same properties as above
bool
(default: false
)Whether stdout data should be split by lines. If set to true
, then stdout
and stderr
on promise expose mappers of original stdout
and stderr
that emit each line with distinct data
event
bool
(default: false
)Whether stdin should be closed. Applicable for spawned processes where stdin
is set to other than 'inherit'
mode, and underlying processes is reading from stdin
. Not providing any stdin
output, may produce stall if process logic waits for an input.
See: get-stdin#13 for more information
npm test