azure - 如何访问 Azure 上的自定义脚本扩展脚本中的环境变量

标签 azure environment-variables azure-virtual-machine azure-vm-templates

我创建了一个 RHEL Linux VM 并在其中安装了 Oracle JDK。

创建虚拟机后,我正在使用虚拟机中的自定义脚本扩展执行脚本。下面是我的脚本。

Myscript.sh

echo "$$ $JAVA_HOME $$" >> output.log
echo `env` >> output.log

输出.log

$$ $$
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin PWD=/var/lib/waagent/custom-script/download/1 LANG=en_US.UTF-8 SHLVL=4 _=/usr/bin/env

当我运行上面的脚本时,我没有看到 JAVA_HOME 已设置。但当我登录到机器时,我看到了 JAVA_HOME 值。

更新:-

在安装Oracle JDK期间,我在/etc/profile中设置了JAVA_HOME。

script1.sh

javaHomeValue=$(cat /etc/profile | grep JAVA_HOME | awk -F= '{print $2}')

echo "-- $javaHomeValue -- ">> 输出.log

输出.log

-- /usr/java/jdk1.8.0_172-amd64 --

我可以使用上面的 script1.sh 获取 JAVA_HOME

是否有任何原因,为什么在执行自定义脚本期间未在环境变量中设置 JAVA_HOME?

最佳答案

对于您的问题,如果您想在文件/etc/profile 中将 JAVA_HOME 设置为环境变量,您可以将代码 export JAVA_HOME=/usr/java/jdk1.8.0_172-amd64 添加到/等/配置文件。然后你就可以在新终端中看到环境变量JAVA_HOME。

关于azure - 如何访问 Azure 上的自定义脚本扩展脚本中的环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50654360/

相关文章:

azure - Get-AzImageBuilderRunOutput 不存在

asp.net-mvc-3 - 是否可以在 azure 上将文本区域的内容保存为扩展名为 .java 的文件?

python - zappa将环境变量上传到哪里?

node.js - 在不重启的情况下重新加载 process.env 变量

Azure 虚拟机错误 : Unable to Capture Image: "Endpoint Not found

azure - 通过 Terraform 创建 Azure Windows VM

powershell - 如何使用 Powershell 在 Azure 网站上执行部署交换?

azure - 从 Azure 中的 Linux 虚拟机备份文件

Azure 前门、应用服务访问限制和 AD 身份验证

ASP.NET核心: Calling web api returns 500