A cross platform solution to node's spawn.
$ npm install cross-spawn
Node has issues when using spawn on Windows:
- It ignores PATHEXT
- It does not support shebangs
- It does not allow you to run
del
ordir
- It does not properly escape arguments with spaces or special characters
All these issues are handled correctly by cross-spawn
.
There are some known modules, such as win-spawn, that try to solve this but they are either broken or provide faulty escaping of shell arguments.
Exactly the same way as node's spawn
or spawnSync
, so it's a drop in replacement.
var spawn = require('cross-spawn');
// Spawn NPM asynchronously
var process = spawn('npm', ['list', '-g', '-depth' '0'], { stdio: 'inherit' });
// Spawn NPM synchronously
var results = spawn.sync('npm', ['list', '-g', '-depth' '0'], { stdio: 'inherit' });
$ npm test
Released under the MIT License.