var childProcess = cp.spawnSync(command, args, {
cwd: process.cwd(),
env: process.env,
stdio: 'inherit',
encoding: 'utf-8'
});
childProcess.outputは常にeq [null、null、null]
process.stdout.writeフックは私に何の出力も与えません
'pipe'
を使用しない場合、childProcess.output
には出力が含まれません。
var cp = require('child_process');
var command = 'echo';
var args = ['hello', 'world'];
var childProcess = cp.spawnSync(command, args, {
cwd: process.cwd(),
env: process.env,
stdio: 'pipe',
encoding: 'utf-8'
});
console.log(childProcess.output); // [ null, 'hello world\n', '' ]
これは、 child.stdout
やその他の場所で示されているようなものですが、完全に明確なわけではありません。 (どうしても、改善を確認したい場合は、 Node.jsリポジトリ に対してプルリクエストを開いてください。)
これを進行状況の進行中の表示に使用します。
var cp = require('child_process');
var command = 'echo';
var args = ['hello', 'world'];
var childProcess = cp.spawnSync(command, args, {
cwd: process.cwd(),
env: process.env,
stdio: [process.stdin, process.stdout, process.stderr],
encoding: 'utf-8'
});
したがって、文字列'pipe'
を配列[process.stdin, process.stdout, process.stderr]
に置き換えます。