我想在运行程序时设置环境变量child_process.exec.这可能吗?
我试过这样设置env:
exec('FOO', {'FOO': 'ah'}, function(error, stdout, stderr) {console.log(stdout, stderr, error);});
Run Code Online (Sandbox Code Playgroud)
但由此产生的消息说FOO不存在.
Chr*_*s F 55
你必须通过一个选择对象,其中的关键ENV,其值本身是键值对的对象.
exec('echo $FOO', {env: {'FOO': 'ah'}}, function (error, stdout, stderr)
{
console.log(stdout, stderr, error);
});
Run Code Online (Sandbox Code Playgroud)
根据@DanielSmedegaardBuus 的回答,如果您想保留它们,您必须将您的环境变量添加到现有的环境变量中:
exec(
"echo $FOO",
{ env: { ...process.env, FOO: "ah" } },
function (error, stdout, stderr) {
console.log(stdout, stderr, error);
}
);
Run Code Online (Sandbox Code Playgroud)