如何在Linux中永久设置新环境变量及其值
我使用export
来设置env变量。但问题是它的会话具体。如果我打开新会话,则设置的值将消失。
提前谢谢
答案 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
并查看您是否可以在列表中看到您的环境变量。它应该在那里。