我在 /etc/profile.d/vars.sh 下有一个包含一些环境变量的 .sh 文件。其内容如下:
export PORT=8080
这是在 AWS EC2 上运行的 Ubuntu 14.04。当我使用默认用户 (ubuntu) 通过 SSH 登录并运行时,echo $PORT
我得到了8080
返回。
但是如果我:
sudo su
su ubuntu
echo $PORT
我什么也没得到。这是为什么?如何为所有用户(或专门为 ubuntu)设置环境变量,以便他们即使在非交互式 shell 会话中也能看到它?
谢谢!
答案1
使用 su 上的 -l 选项来获取完整的用户登录:
su -l ubuntu
这应该会给你你所期望的 ubuntu 环境。