doc: script with spaces spawn example for windows

Adds an example of how to spawn a shell script under Windows with
spaces in its filename.

Ref: https://github.com/nodejs/node/issues/7367
PR-URL: https://github.com/nodejs/node/pull/8035
Reviewed-By: João Reis <reis@janeasystems.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
Bartosz Sosnowski 2016-06-30 16:58:24 +02:00 committed by James M Snell
parent 5f617c5f9e
commit 0abdf59f50

View File

@ -82,7 +82,8 @@ be launched using [`child_process.execFile()`][]. When running on Windows, `.bat
and `.cmd` files can be invoked using [`child_process.spawn()`][] with the `shell`
option set, with [`child_process.exec()`][], or by spawning `cmd.exe` and passing
the `.bat` or `.cmd` file as an argument (which is what the `shell` option and
[`child_process.exec()`][] do).
[`child_process.exec()`][] do). In any case, if the script filename contains
spaces it needs to be quoted.
```js
// On Windows Only ...
@ -110,6 +111,13 @@ exec('my.bat', (err, stdout, stderr) => {
}
console.log(stdout);
});
// Script with spaces in the filename:
const bat = spawn('"my script.cmd"', ['a', 'b'], { shell:true });
// or:
exec('"my script.cmd" a b', (err, stdout, stderr) => {
// ...
});
```
### child_process.exec(command[, options][, callback])