Unix:相同的可执行文件,不同的用户:不同的可执行版

时间:2013-12-10 09:50:30

标签: macos bash shell unix version

我对终端中发生的以下情况感到非常困惑:

my-computer:~$ which java
/usr/bin/java

my-computer:~$ java -version
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode)

my-computer:~$ sudo su
Password:

my-computer:/Users/paulhabfast$ which java
/usr/bin/java

my-computer:/Users/paulhabfast$ java -version
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

任何人都可以解释一下发生了什么吗? 到目前为止我理解的方式是,当我从当前用户切换到root用户时,我将被提供不同的可执行文件?

我正在运行Mac OSX 10.9,但我认为我有一个非常标准的unix环境。

我可以提供任何其他信息吗?

1 个答案:

答案 0 :(得分:3)

/usr/bin/java是一个查看环境变量的包装器,请尝试env查看这些变量,例如JAVA_HOME