Windows PowerShell中的NODE_ENV返回undefined

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows PowerShell中的NODE_ENV返回undefined相关的知识,希望对你有一定的参考价值。

Windows路径设置为nodejs。但是,除非使用命令提示符AS Admin,否则我无法读取process.env.NODE_ENV。

我希望能够在Windows PowerShell中设置和读取NODE_ENV。

答案

环境变量可以在Windows MachineUserProcess中的3个级别上设置,这些级别在子进程启动时从父进程继承。当然,如果进程在该用户的上下文中运行,则User级别仅继承。

另一方面,如果父进程(例如:System)更改了变量,则这些更改不会自动传播到已经运行的子进程(例如:PowerShell或node),除非您重新启动它们。

有了这种感觉,PowerShell还会自动继承env-vars,你可以在env: PSDrive下看到:

ls env:*

如果您看不到新变量并且希望避免重新启动,您还可以使用[System.Environment] .NET类在已经运行的控制台中读取和填充它,例如:

$env:NODE_ENV = [System.Environment]::GetEnvironmentVariable('NODE_ENV',[System.EnvironmentVariableTarget]::Machine)

以上是关于Windows PowerShell中的NODE_ENV返回undefined的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Windows PowerShell PackageManager (OneGet) 安装 Node.js?

windows10 powershell上切换至cmd

错误 - Windows Powershell 中的未知监听 EADDRINUSE :::5432

我们如何使用Windows Powershell脚本替换文本文件中的日期?

Node中的consoleeach和forEach

PhpStorm、Windows 10 PowerShell 和 Git 命令