在另一个中引用现有的环境变量

在另一个中引用现有的环境变量

假设我JAVA_HOME/etc/environment文件中定义了一个名为 的环境变量。我需要JAVA_HOME/binPATH变量中附加一个新值。考虑以下内容,

JAVA_HOME=/usr/apps/jdk1.8.10_1
PATH=/bin/something/:/bin/bash/something:/usr/apps/jdk1.8.10_1/bin

现在如果你看一下,如果我可以/usr/apps/jdk1.8.10_1/bin用下面类似的内容替换,那会更方便。

PATH=/bin/something/:/bin/bash/something:JAVA_HOME/bin

我怎么能这样做呢?是吗%JAVA_HOME%/bin

答案1

您无法在 中执行此操作/etc/environment。它不是脚本文件,变量扩展在那里不起作用。

要修改整个系统,文件夹中PATH带有扩展名的文件是更好的方法。它可以被命名或几乎任何名称,只要它有扩展名即可。在你的情况下,它可能看起来像这样:.sh/etc/profile.dmyvars.sh.sh

export JAVA_HOME=/usr/apps/jdk1.8.10_1
PATH="$PATH:$JAVA_HOME/bin"

这样,您可以保留PATH中的默认定义/etc/environment,并在您自己的文件中对其进行修改。

请参阅环境变量页面以供参考。

答案2

引用变量是通过$在 中添加 来完成的bash。输入以下内容进行检查:

$ echo $JAVA_HOME
/usr/apps/jdk1.8.10_1

命令解释器用$variable其值替换。

你的命令是:

PATH=/bin/something/:/bin/bash/something:$JAVA_HOME/bin

不要使用空格,否则您的命令将不起作用。

笔记:%symbols%变量名周围的内容都是微软的风格。

相关内容