我必须使用 promise.all() 编写 Node.js 脚本来检查环境是否有 docker、git、npm、nvm 和 node.js。对于每个工具,将工具版本写入标准输出。如果某些工具不存在,请写入有关它的 stderr 消息并使用正确的退出代码完成过程。
我的代码如下所示:
const util = require("util");
const exec = util.promisify(require("child_process").exec);
async function getVersion(env) {
try {
const { stdout } = await exec(env);
console.log(stdout);
} catch (error) {
console.error(error.stderr);
}
}
(async function () {
const fileVersion = [
"node --version",
"docker --version",
"nvm version",
"git --version",
"npm --version",
];
const results = await Promise.all(fileVersion);
for (const element of results) {
getVersion(element);
}
})();
我知道在该代码中 promise.all() 没有发挥任何作用,我不熟悉 promise.all() 并且请任何人都可以向我展示如何做到这一点的示例?