对设置环境变量感到困惑

对设置环境变量感到困惑

我已经尝试设置一些环境变量几个小时了,但没有成功格鲁姆这里的设置:

我使用 Debian 6,然后从桌面进入终端。在此窗口中,我输入“su”以 root 身份登录。还有另外两个用户:myname 和 globus。现在我想为所有三个用户(root、myname、globus)设置 JAVA_HOME、ANT_HOME 和 PATH 变量。关于这一点文章我编辑了 /home/myname/.profile 和 /home/globus/.profile 添加了以下内容:

export JAVA_HOME="/usr"
ANT_HOME="/lib/apache-ant-1.8.2"

现在,当我以 globus 身份登录(从桌面打开终端并输入“su globus”)并回显 $ANT_HOME 时,我得到“/usr”而不是上面的值...除此之外,我只得到一个“$”和行的开头,而不是像“root@mydebian: /current/path”这样的内容。

这是我的.profile 的内容:

# if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

JAVA_HOME=/usr/bin;
export JAVA_HOME

答案1

登录 shell 会读取用户的 ~/.profile。执行“su用户“有效地将你的身份改变为用户通过启动 shell用户;您尚未以用户. 要以以下身份登录用户,执行“su -l用户“。

答案2

那应该可行:

JAVA_HOME=/usr;
export JAVA_HOME
ANT_HOME=/lib/apache-ant-1.8.2;
export ANT_HOME

您不需要将其放在单独的行中,我只是喜欢保持这种状态,以便我可以将它们添加到后者中PATH,例如:

GRAILS_HOME=/Users/werner/Library/grails;
export GRAILS_HOME
export PATH=$GRAILS_HOME/bin:$PATH

相关内容