在rhel中使用shell脚本获取Java安装路径



我必须自动执行一个过程,在这个过程中,我需要在RHEL 7上安装java,使用rpm包,然后在安装位置更新安全jar。一旦我执行java rpm,我将如何得到正确的安装路径?当我执行which java时,它显示的是/bin/java。然而,我需要安装位置使用shell脚本。这里,实际安装发生在/usr/java/jdk1.7.0_55/jre。我想知道这个位置。谁能告诉我怎么取回这个?

readlink程序( coretils 的一部分,可以在任何RHEL版本上使用)可以解析符号链接:

foo=$(readlink -f $(which java))
echo $foo

(您可能也有realpath,但也可能没有)。

Oracle的Java RPM包支持'alternatives'系统,它提供了您正在寻找的详细信息。例如,在安装了最新的JRE之后,'alternatives'报告如下:

[user@host ~]$ alternatives --display java
java - status is auto.
 link currently points to /usr/java/jre1.8.0_60/bin/java
etc...

最新更新