回答:
var exec = require('child_process').exec;
exec('pwd', function callback(error, stdout, stderr){
// result
});
execには512kのバッファサイズのメモリ制限があります。この場合、spawnを使用することをお勧めします。spawnを使用すると、実行時に実行されたコマンドのstdoutにアクセスできます
var spawn = require('child_process').spawn;
var prc = spawn('java', ['-jar', '-Xmx512M', '-Dfile.encoding=utf8', 'script/importlistings.jar']);
//noinspection JSUnresolvedFunction
prc.stdout.setEncoding('utf8');
prc.stdout.on('data', function (data) {
var str = data.toString()
var lines = str.split(/(\r?\n)/g);
console.log(lines.join(""));
});
prc.on('close', function (code) {
console.log('process exit code ' + code);
});
stderr
はなくにある可能性がありますstdout
。私の場合、close
決して来ることはありませんが...
最も簡単な方法は次のとおりです。
const {exec} = require("child_process")
exec('yourApp').unref()
「yourApp」を待たずにプロセスを終了するには、unrefが必要です
ここにexec ドキュメントがあります
Node.jsのドキュメントから:
ノードは、ChildProcessクラスを通じて、3方向のpopen(3)機能を提供します。
http://nodejs.org/docs/v0.4.6/api/child_processes.htmlを参照してください
child_process
モジュールを使用したい。さまざまなユースケースのいくつかの明確な例を提供するドキュメントを参照してください。