node.js - 如何使用 node js 查找正在运行的应用程序/系统软件的列表?
问题描述
我想在 node js 中登记正在运行的系统或应用程序软件。我用过child_process
。它提供了所有当前正在运行的进程。但我想区分进程的类型。
在这段代码中
function isRunning(win, mac, linux) {
return new Promise(function (resolve, reject) {
const plat = process.platform
const cmd = plat == 'win32' ? 'tasklist' : (plat == 'darwin' ? 'ps -ax | grep ' + mac : (plat == 'linux' ? 'ps -A' : ''))
const proc = plat == 'win32' ? win : (plat == 'darwin' ? mac : (plat == 'linux' ? linux : ''))
if (cmd === '' || proc === '') {
resolve(false)
}
exec.exec(cmd, function (err, stdout, stderr) {
console.log(stdout);
resolve(stdout.toLowerCase().indexOf(proc.toLowerCase()) > -1)
})
})
}
isRunning('myprocess.exe', 'code', 'myprocess')
.then((v) => console.log(v))
.catch(error => {
console.log(error);
});
isRunning
我使用名为 的 VS Code签入了 Linux OS code
,然后它返回 true。
给出所有正在运行的stdout
进程。在进程中,我想知道哪些是应用程序或系统进程正在运行。
解决方案
推荐阅读
- arrays - 解析 VBA 字典中的数组项时下标超出范围 - 不能使用索引 0
- java - 将 XML 字符串附加到 Java 中的元素
- c# - 如何使用rabbitMq从服务器发送客户端特定的答案
- json - Azure 数据工厂获取元数据以获取 blob 文件名并将它们传输到 Azure SQL 数据库表第 2 部分
- java - 我在 Android Studio 中切换时遇到问题
- javascript - 为什么字符串作为 React Native 对象出现?
- vue.js - agGrid如何在更改复选框的值后刷新
- ios - 如何在 Swift 4 中生成 128C 条码?
- php - SilverStripe 4 (cms4 / SS4):如何进行兄弟页面的下一个/上一个导航?
- python - 使用 Python 删除满足两个特定条件(值)的数据帧行