我正在运行RHEL 6,我已经导出了一个环境变量,如下所示:

export DISPLAY=:0

当终端关闭时,该变量将丢失。我如何永久地添加这个,以便这个变量值始终存在于特定的用户?


当前回答

将这一行添加到.bashrc文件或.profile文件中。

在$HOME/文件中设置的变量。配置文件对当前用户是活动的,而/etc/profile中的配置文件是全局的。每次Bash会话启动时都会拉出.bashrc文件。

其他回答

一个特别的例子:

我有Java 7和Java 6安装,我需要运行一些构建与6,其他人与7。因此,我需要动态地更改JAVA_HOME,以便Maven为每个构建选择我想要的内容。我做了以下事情:

创建j6.sh脚本,导出JAVA_HOME=…安装j6的路径… 然后,正如上面的一条评论所建议的那样,每当我需要J6进行构建时,我就在相应的命令终端中运行源J6 .sh。默认情况下,我的JAVA_HOME设置为J7。

将这一行添加到.bashrc文件或.profile文件中。

在$HOME/文件中设置的变量。配置文件对当前用户是活动的,而/etc/profile中的配置文件是全局的。每次Bash会话启动时都会拉出.bashrc文件。

你可以把它添加到你的shell配置文件中,例如$HOME/。Bashrc或更全局的/etc/environment。

添加这些行之后,更改不会立即反映在基于gui的系统中。您必须退出终端或创建一个新的终端,并在服务器上注销会话并重新登录以反映这些更改。

在Ubuntu系统上,使用以下位置:

格式为“JAVA_PATH=/usr/local/java”的系统级持久化变量存储在 /etc/environment 系统范围的持久变量,引用变量,如 export PATH="$JAVA_PATH:$PATH /etc/.bashrc 格式为“PATH DEFAULT=/usr/bin:usr/local/bin”的用户持久化变量存储在 ~ / .pam_environment

有关#2的更多细节,请查看这个 问Ubuntu答案。

注意:#3是Ubuntu的推荐,但是在现实世界中它可能有安全问题。

如果适合任何人,这里有一些永久添加环境变量的简单指南。

vi ~/.bash_profile

将变量添加到文件中:

export DISPLAY=:0
export JAVA_HOME=~/opt/openjdk11

立即应用所有更改:

source ~/.bash_profile

来源:如何在Linux中设置环境变量