async function test() {
const shell = require("util").promisify(require("child_process").exec);
const shellResult = await shell("node --version");
console.log(shellResult);
}
test();
在我的程序中,我想做一些类似上面的函数。我使用PM2来启动我的程序。但是当涉及到这个函数时,PM2每次都会打开一个新的cmd.exe,并在它完成时关闭它,随着时间的推移,这会变得很烦人。
有没有一种方法可以完成类似上面的功能,而不必让PM2每次都打开一个新的cmd提示符?或者至少有一种方法可以在后台打开这些cmd提示符?
额外信息:
- 节点版本:15.9.0
- PM2版本:4.5.4
- 操作系统: windows 10
- 上面的函数可能运行得太快了,所以很难判断PM2是否真的打开了一个新的cmd.exe。如果您执行
await shell("git pull origin master")
或其他需要更长时间的操作,那么您实际上可以看到它的打开和关闭新的cmd提示 - 我以
pm2 start
启动程序 - ecosystem.config.js文件看起来像这样:
module.exports = {
"apps": [{
"script": "master.js",
"node_args": ["--inspect=10000"]
}]
};
1条答案
按热度按时间58wvjzkj1#
您可以使用
布尔值来解决这个问题。
参考链接:[节点. js v19.3.0:child_process.exec(命令,选项][,回调])