有没有办法从命令行显示NODE_ENV?

时间:2015-01-14 03:44:37

标签: node.js

这里的答案都是指一个名为process.env.NODE_ENV的东西,但命令行中的echo $process.env.NODE_ENV不起作用。有什么想法吗?

8 个答案:

答案 0 :(得分:29)

使用echo $NODE_ENV。命令行是一个shell,可能是bash,这是打印环境变量值的bash语法。

答案 1 :(得分:25)

如果您已定义NODE_ENV变量,那么您应该能够通过在命令提示符中键入node来查看此信息,这将打开节点单元格,然后键入process.env.NODE_ENV

要检查现有的env变量,请输入此.. process.env

答案 2 :(得分:4)

要在Windows中显示当前节点环境,请使用:

> echo %NODE_ENV%

它会在命令行上输出环境,如:

development

答案 3 :(得分:2)

转到节点REPL,然后给出process.env.NODE_ENV,变量进程的范围在nodejs进程中,而不是在shell进程中。

sk3037@saravana:~/src$ node
> process.env.

答案 4 :(得分:2)

逐步设置窗口CMD NODE_ENV:

  1.   

    设置NODE_ENV = my_node_env(定义NODE_ENV)

  2.   

    节点(运行节点)

  3.   

    process.env.NODE_ENV(显示NODE_ENV)

  4. "设置NODE_ENV"您可以运行该应用程序,它将使用设置NODE_ENV。您可以在pm2中使用自定义环境运行您的应用程序而不会出现问题。

答案 5 :(得分:2)

  1. 执行ps aux | grep node
  2. ,找到您正在运行的流程的ID
  3. 通过执行less /proc/[your-id]/environ
  4. 查看该流程使用的环境变量

答案 6 :(得分:1)

您是否为流程设置了NODE_ENV?

这是一些例子。 在代码中的某处,您将节点环境设置为"production""development""any thing you want"。 并根据您的节点环境做一些事情。

process.env.NODE_ENV="production";

//others coding
if(process.env.NODE_ENV === "production")
{
  //useblabla log level.
  //use production log.
}
else if(process.env.NODE_ENV === "development")
{
  //useblabla log level.
  //use development log.

}
console.log(process.env.NODE_ENV); //"production"

答案 7 :(得分:0)

您使用...调用列表中列出可用于项目目录的Mac的所有变量。

printenv

我经常使用它来查找NODE_ENV和其他变量。