NodeJS - 使用cmd设置环境变量

时间:2016-07-07 06:18:23

标签: node.js variables environment

我只是想知道是否有任何方法可以简单地读取我在cmd中使用SET设置的环境变量。 我已经阅读了有关process.env。[ENVVAR]的内容,但是当我在console.log中设置了我在cmd中设置的变量时,它显示了未定义的内容。 在其他线程上,我读到它甚至不可能访问windows env。变量。 那究竟是什么呢?

1 个答案:

答案 0 :(得分:2)

我会将我的评论总结为一个答案。

从cmd窗口启动node.js时,仅为该node.js进程创建当前用户环境的副本。可以通过process.env访问该环境。

任何外部代理都不会更改该环境。一旦node.js进程启动,其环境将独占于node.js进程。

通过Windows Control Panel > System > Advanced System Settings > Advanced > Environment Variables更改Windows默认环境会影响在新创建的环境中设置的变量/值(例如,新创建的cmd窗口)。它不会影响当前打开或运行的环境。

使用process.env,您可以阅读自己环境中的所有现有环境变量。您可以直接修改process.env对象(更改值,删除属性等等),访问process.env的进程中的任何其他代码都可以看到这些更改。但是,对其他cmd窗口中的环境进行外部更改不会影响正在运行的node.js程序中的环境。