如何在Linux中永久设置环境变量

时间:2017-08-04 09:22:04

标签: linux environment-variables

如何在Linux中永久设置新环境变量及其值

我使用export来设置env变量。但问题是它的会话具体。如果我打开新会话,则设置的值将消失。 提前谢谢

5 个答案:

答案 0 :(得分:2)

由于上述答案所有方面, 设置环境变量取决于您是否要设置为用户会话或超级用户会话。

1)在您选择的环境中输入此命令:

 $ ls -a

2)您将看到所有缓存的文件以及它们之间: .bashrc中

3)在您喜欢的编辑器中打开此文件,例如:

 $ nano .bashrc

4)然后在文件末尾添加您的个性化变量,如下所示:

 export YOURVARIABLE="/home/"$USER"/YOURPATHFOREXAMPLE"

5)然后保存并关闭并打开终端,检查您的变量是否已设置:

$ echo $YOURVARIABLE
[output ->] /home/the-user-name/YOURPATHFOREXAMPLE

答案 1 :(得分:0)

/etc/environment中设置。在我的Ubuntu安装中,您可以在此处持久设置环境变量。对于不同的分发,文件可能不同。以下是我的/etc/environment文件的内容。

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

了解如何在上面设置环境变量PATH

关于导出命令的说明

export varname使变量varname可用于从当前shell运行的任何子shell,即运行export命令的shell。任何其他shell,与您当前的shell无关或是父级,将不具有此变量。知道这一点,假设您正在使用bash shell,您可以在.bashrc文件中编写导出命令。 .bashrc是每次启动bash shell时运行的文件,因此您在其中编写的任何命令都会在打开的任何bash shell中执行。因此,在.bashrc文件中写入导出命令是另一种选择。类似的是您正在使用的任何其他shell的过程。例如。对于Z shell,文件是.zshrc。

答案 2 :(得分:0)

通常的地方是~/.bashrc,假设您正在使用bash,这是大多数发行版中的默认值。用echo $SHELL检查自己。 如果您只想在登录shell中设置变量(但不是在脚本中),则可以使用~/.bash_profile

答案 3 :(得分:0)

有一个很好的解释,什么时候把它放在这里: http://www.linuxfromscratch.org/blfs/view/6.3/postlfs/profile.html 如果您没有root访问权限,请将其放在本地某处,例如.bash_profile或根据您使用的shell。通过输入命令ps。

找到你的shell

答案 4 :(得分:0)

这适用于 Debian 11。它应该适用于其他基于 Debian 的发行版,例如 Ubuntu 等。我正在使用老派 nano 来编辑位于 pam_env.conf 目录中的名为 /etc/security/ 的文件,您可以使用任何你想要的东西来代替 nano。

sudo nano /etc/security/pan_env.conf

在这个文件中设置环境变量的格式如下:

VARIABLE [DEFAULT=[value]] [OVERRIDE=[value]]

(例如,让我们使用值 DXVK_HUD 设置 full 变量。这等效于 export DXVK_HUD=full 您可以将变量名称及其值替换为您想要的任何用例.)

这就是它在该文件中作为新行查看的方式:

DXVK_HUD DEFAULT=full OVERRIDE=full

通过保存进行更改(CTRL+O 组合键用于通过 nano 进行更改)。然后按回车(回车键)。然后按CTRL+X退出nano。

重新启动系统。并在终端中输入 env 并查看您是否可以在列表中看到您的环境变量。它应该在那里。