使用shelljs
创建子进程!/usr/bin/env node
require('/usr/local/lib/node_modules/shelljs/global');
fs = require("fs");
var child=exec("sudo mongod &",{async:true,silent:true});
function on_exit(){
console.log('Process Exit');
child.kill("SIGINT");
process.exit(0)
}
process.on('SIGINT',on_exit);
process.on('exit',on_exit);
子进程仍在运行..杀死父进程后
答案 0 :(得分:66)
如果您可以使用内置child_process.spawn
的节点,则可以向子进程发送SIGINT
信号:
var proc = require('child_process').spawn('mongod');
proc.kill('SIGINT');
这样做的好处是主进程应该一直存在,直到所有子进程都终止。