在Mac上的setenv等效?

时间:2013-09-24 18:18:41

标签: macos bash setenv

我想使用setenv设置环境变量:

setenv NODE_ENV localhost  

但是setenv给我一个错误,说找不到命令。有谁知道如何执行相当于setenv的MAC OSX?谢谢!

3 个答案:

答案 0 :(得分:29)

你想要export

NODE_ENV=localhost
export NODE_ENV

或一行export NODE_ENV=localhost

这与OSX 本身无关,更多与bash vs(t)csh作为你的shell有关

答案 1 :(得分:7)

最适合Mac的是:

launchctl setenv NODE_ENV localhost

如果你想让变量持久化并避免重启。

请参阅:

http://www.dowdandassociates.com/blog/content/howto-set-an-environment-variable-in-mac-os-x-slash-etc-slash-launchd-dot-conf/

答案 2 :(得分:0)

你是Cshell人吗?

早期版本的OS X附带tcsh作为默认shell,因为OS X基于BSD。但是,Mac OS X附带BASH作为用户的默认shell。

Macs仍然配备Turbo Csh,如果您愿意,可以将其设为默认shell。在终端中,键入:

$ chsh -s /bin/tcsh

如果您决定要切换回BASH:

$ chsh -s /bin/bash

您可以在/etc/shell文件中看到所有可能的shell列表。