我必须使用rpm包自动化我需要在RHEL 7上安装java的过程,然后在安装的位置更新安全jar。一旦我执行了java rpm,我将如何获得正确的安装路径?当我执行which java
时,它会显示/bin/java
。但是,我需要使用shell脚本安装位置。
这里,实际安装发生在/usr/java/jdk1.7.0_55/jre
。我想得到这个位置。有人可以建议我如何检索这个吗?
答案 0 :(得分:2)
readlink
程序(coreutils的一部分,可在任何RHEL版本上使用)可以解析符号链接:
foo=$(readlink -f $(which java))
echo $foo
(您可能还有realpath
,但可能没有。)
答案 1 :(得分:0)
来自Oracle的Java RPM软件包支持“替代方案”。系统,提供您正在寻求的细节。例如,在安装最近的JRE之后,'替代品'报告如此:
[user@host ~]$ alternatives --display java
java - status is auto.
link currently points to /usr/java/jre1.8.0_60/bin/java
etc...
输出对于脚本编写相对友好。