从另一个node.js脚本终止node.js脚本

时间:2019-07-15 19:46:41

标签: node.js command-line

我有一个node.js脚本,它使用child_process.exec()运行另一个名为“ app.js”的node.js脚本。我需要可以终止“ app.js”的东西。我可以在命令行中使用的命令,也可以在node.js中使用其他命令。

我并不是要杀死所有节点进程,而只是杀死“ app.js”进程。我的计算机正在运行Windows 10。

现在代码如下:

let isLaunched = false;
const exec = require('child_process').exec;

function launch() {
    if (isLaunched) {
        isLaunched = false;

        // Something that terminates app.js

    } else {
        isLaunched = true;
        exec('node app.js');
    }
}

我通过HTML中的按钮调用该函数。

<button onclick="launch()">Launch</button>

如何在node.js中做到这一点?

1 个答案:

答案 0 :(得分:1)

var isLaunched = false;
var { exec } = require('child_process');
var myProcess; //use whatever name
function launch() {
    if (isLaunched) {
        isLaunched = false;
        myProcess.kill('SIGKILL');
    } else {
        isLaunched = true;
        myProcess = exec('node app.js');
    }
}