NodeJs——如何获取Windows电脑指定应用进程信息

前言

如题,我们如何来获取指定应用程序的进程信息呢?

内容

思路

首先我们可以通过cmd命令查看系统上的进程信息,那么我们能不能用NodeJs去调用cmd命令嘛?答案必然是可以的;

CMD

C:\Users\WangYang>tasklist /fi "imagename eq wxwork.exe"

映像名称                       PID 会话名              会话#       内存使用
========================= ======== ================ =========== ============
WXWork.exe                   17344 Console                    1     21,760 K

NodeJS

const exec = require('child_process').exec

文档 | child_process_exec

代码


/**
 * 获取指定应用程序的PID | 只考虑win和linux
 * @param exeName
 */
export function cmdFindPidList (exeName) {
  const cmd = process.platform === 'win32' ? `tasklist -V|findstr "${exeName}" ` : `ps aux | grep ${exeName}`
  exec(cmd, function (err, stdout, stderr) {
    if (err) { return }
    stdout.split('\n').filter(function (line) {
      const p = line.trim().split(/\s+/)
      // p[0] 应用程序名称  p[1] 应用程序PID
      if (p[0] && p[1]) console.log('pname: ' + p[0] + 'pid: ' + p[1]) // 这一步可以做自己逻辑得判断
    })
  })
}

效果

posted @ 2021-08-17 13:40  。思索  阅读(1510)  评论(0编辑  收藏  举报