在OS X中设置环境变量?
在OSX中修改环境变量(如PATH)的正确方法是什么? 我看了一下Google,找到了3个不同的文件来编辑:
我甚至没有这些文件,而且我很确定.tcshrc是错误的,因为OSX现在使用了bash。 任何人都知道这些变量,特别是PATH的定义?
编辑:我正在运行OS X 10.5
  布鲁诺走上正轨。  我已经做了大量的研究,如果你想设置所有GUI应用程序中可用的变量,唯一的选择是/etc/launchd.conf 
请注意,environment.plist不适用于通过Spotlight启动的应用程序。 这由史蒂夫塞克斯顿在这里记录。
1)打开终端提示符
  2)输入sudo vi /etc/launchd.conf (注意:这个文件可能还不存在) 
3)将如下内容放入文件中
# Set environment variables here so they are available globally to all apps
# (and Terminal), including those launched via Spotlight.
#
# After editing this file run the following command from the terminal to update 
# environment variables globally without needing to reboot.
# NOTE: You will still need to restart the relevant application (including 
# Terminal) to pick up the changes!
# grep -E "^setenv" /etc/launchd.conf | xargs -t -L 1 launchctl
#
# See http://www.digitaledgesw.com/node/31
# and http://stackoverflow.com/questions/135688/setting-environment-variables-in-os-x/
#
# Note that you must hardcode the paths below, don't use enviroment variables.
# You also need to surround multiple values in quotes, see MAVEN_OPTS example below.
#
setenv JAVA_VERSION 1.6
setenv JAVA_HOME /System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home
setenv GROOVY_HOME /Applications/Dev/groovy
setenv GRAILS_HOME /Applications/Dev/grails
setenv NEXUS_HOME /Applications/Dev/nexus/nexus-webapp
setenv JRUBY_HOME /Applications/Dev/jruby
setenv ANT_HOME /Applications/Dev/apache-ant
setenv ANT_OPTS -Xmx512M
setenv MAVEN_OPTS "-Xmx1024M -XX:MaxPermSize=512m"
setenv M2_HOME /Applications/Dev/apache-maven
setenv JMETER_HOME /Applications/Dev/jakarta-jmeter
4)将更改保存在VI中,然后重新启动Mac。 或者使用上面代码注释中显示的grep / xargs命令。
  5)通过打开终端窗口并输入export ,证明你的变量正在工作,你应该看到你的新变量。  这些也将在您通过Spotlight启动的IntelliJ和其他GUI应用程序中提供。 
如何为Spotlight启动的新流程设置环境(无需重启)
  您可以使用launchctl setenv设置launchd使用的环境(以及扩展名,从Spotlight开始的任何内容)。  例如要设置路径: 
launchctl setenv PATH /opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin
  或者,如果您想在.bashrc或类似文件中设置路径,请将其镜像到launchd中: 
PATH=/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin
launchctl setenv PATH $PATH
没有必要重新启动,但如果您希望它能够接受更改的环境,则需要重新启动应用程序。
  这包括任何已经在Terminal.app下运行的shell,但是如果你在那里,你可以更直接的设置环境,例如export PATH=/opt/local/bin:/opt/local/sbin:$PATH for bash or zsh 。 
重新启动后如何保持更改
  要在重新启动后保留更改,可以从/etc/launchd.conf设置环境变量,如下所示: 
setenv PATH /opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin
  launchd.conf在您重启时自动执行。 
  如果您希望这些更改现在生效,您应该使用此命令重新处理launchctl.conf (谢谢@mklement提示!) 
egrep -v '^s*#' /etc/launchd.conf | launchctl
  您可以通过man launchctl命令了解有关launchctl以及它如何加载launchd.conf更多信息。 
直到并包括狮子 (10.7),您都可以设置它们
〜/ .MacOSX / environment.plist
看到:
  对于终端中的PATH,您应该可以设置.bash_profile或.profile (但您可能需要创建它) 
  对于山狮和以上,你需要使用launchd和launchctl 
