我正在JAVA_HOME我的~/.bashrc文件中设置我的。
现在,我需要创建一个脚本来更改JAVA_HOME当前终端的 ,以便我可以启动需要 java 5 的应用程序。
我已经创建了这个脚本来完成这个任务,但是完成后,我可以看到 JAVA_HOME 没有更新
export JAVA_HOME=/usr/lib/jvm/java-5-oracle/
export PATH=$PATH:$JAVA_HOME
Run Code Online (Sandbox Code Playgroud)
这是结果
$ ./javaHome5.sh
$ echo $JAVA_HOME
/usr/lib/jvm/java-6-oracle/
Run Code Online (Sandbox Code Playgroud)
我认为没有应用的原因是脚本正在它自己的终端中执行,所以当脚本结束时,当前终端不会受到影响。
目前,我找到的唯一方法是:
~/.bashrc和更改JAVA_HOME VARsource ~/.bashrc以应用当前终端中的更改。这又不能在脚本中应用,因为该source命令需要在当前窗口中运行。毋庸置疑,此更改适用于所有新的终端窗口,因此我实际上需要执行两次此操作:一次在启动我的应用程序之前,另一次是在此之后立即将环境变量恢复为默认值。那真的不太方便。
您有什么想法可以使用脚本更改此 var 吗?