仅当它是节点进程时,才按进程ID终止进程

时间:2019-07-09 17:09:00

标签: javascript node.js

我正在按进程ID杀死一个进程,该方法有效,但是,如果该进程ID以某种方式被杀死,并且新进程开始采用该进程ID,它将被杀死。

因此,我的想法是仅杀死一个进程,而这是一个节点进程,它听起来比仅按进程ID杀死任何进程更具破坏性。

问题是,节点似乎没有办法通过进程ID获取进程信息。那么,有没有一种方法可以获取此进程信息,所以当我执行kill时,我只会杀死节点进程?

let settings = require('./settings.json')
let pid = settings.pid
os.platform() == 'win32' ? process.kill(pid) : process.kill(-pid)

1 个答案:

答案 0 :(得分:0)

您可以从nodejs执行ps命令,并检查命令列是否为“ node”:

ps -p <PID> 

您将需要解析其结果,并检查CMD列是否为“节点”,这意味着它是一个nodejs进程。