在 google 云实例 rhel7 中导出变量
export variable in google cloud instance rhel7
我从 RHEL7 映像创建了一个实例。
在 /opt/jdk1.7
安装 java 并编辑 /etc/enviroment
以包含 PATH=/opt/jdk1.7/bin:$PATH
现在执行重启。
现在,当我尝试登录时,它允许使用电子邮件 ID 的第一部分登录,然后它要求输入密码。
现在我以 xyz
.
的身份登录
现在我输入 java -version
它给了我正确的版本,而且
echo $PATH
打印出正确的 path
.
现在我使用 sudo su
切换到 root
并且 whoami
打印 root
和 path
获取更改并且它不包含其中的 java bin 路径。
如何全局导出变量?
PS:一件奇怪的事情是在我切换到 root
并再次切换回 xyz
之后。 path
不包含 java bin
的路径
变量扩展在 /etc/environment 中不起作用。此文件中只能放置绝对值赋值。
例如
T1=hithere
T2=X-$T1
重启后,
echo $T2
将打印 X-$T1 ,但 T1 的值将按预期设置。
所以把它放在 ~/.bashrc, ~/.profile, ~/.bash_profile, 或者 /etc/profile 等等
我从 RHEL7 映像创建了一个实例。
在 /opt/jdk1.7
安装 java 并编辑 /etc/enviroment
以包含 PATH=/opt/jdk1.7/bin:$PATH
现在执行重启。
现在,当我尝试登录时,它允许使用电子邮件 ID 的第一部分登录,然后它要求输入密码。
现在我以 xyz
.
现在我输入 java -version
它给了我正确的版本,而且
echo $PATH
打印出正确的 path
.
现在我使用 sudo su
切换到 root
并且 whoami
打印 root
和 path
获取更改并且它不包含其中的 java bin 路径。
如何全局导出变量?
PS:一件奇怪的事情是在我切换到 root
并再次切换回 xyz
之后。 path
不包含 java bin
变量扩展在 /etc/environment 中不起作用。此文件中只能放置绝对值赋值。 例如
T1=hithere
T2=X-$T1
重启后,
echo $T2
将打印 X-$T1 ,但 T1 的值将按预期设置。
所以把它放在 ~/.bashrc, ~/.profile, ~/.bash_profile, 或者 /etc/profile 等等