根据这里的帖子,如Setting environment variables in OS X?,对于Mountain Lion,如果不是早期版本的OS X,在系统级别设置环境变量的唯一方法是使用(或创建)包含以下命令的文件/etc/launchd.conf:
setenv CATALINA_BASE /opt/local/share/java/tomcat6
(这似乎按预期工作。)
如果是这样,如何通过引用其他内容的值来实现此目的,例如设置JAVA_HOME?在/etc/launchd.conf中我试过
setenv JAVA_HOME $(/usr/libexec/java_home)
然后在终端,如果我运行
echo $JAVA_HOME
我刚回来$(/ usr / libexec / java_home)。
相比之下,如果我将相同的setenv JAVA_HOME $(/ usr / libexec / java_home)命令放入我的〜/ .profile中,那么echo $ JAVA_HOME的结果就是引用的实际值,即/ Library / Java / JavaVirtualMachines / jdk1.7.0_15.jdk /内容/主页。
那么我应该如何修改/etc/launchd.conf中的setenv命令,以使其提供第二个参数的值而不是文字的第二个参数?
答案 0 :(得分:0)
如果你需要附加到现有路径,你可以从终端做一些像“echo setenv PATH $ PATH:/ path_addition>> /etc/launchd.conf”这样的启动。 ,它本身包含变量,但如果你知道你想要使用的值,你可以使用它来注入它们。或者,创建一个单独的脚本,为您执行类似的操作。