Answers:
您可以将其添加到您的Shell配置文件中,例如,$HOME/.bashrc
或在全局中添加/etc/environment
。添加这些行之后,更改将不会立即反映在基于GUI的系统中,您必须退出终端或创建一个新终端,然后在服务器中注销会话并登录以反映这些更改。
source
eg- > source ~/.bashrc
。
您必须编辑三个文件来设置永久性环境变量,如下所示:
通常,您必须重新启动计算机才能应用此更改。但是您可以通过以下命令在bashrc和配置文件中应用更改:
$ source ~/.bashrc
$ source ~/.profile
但是对于/ etc / environment您别无选择,只能重新启动(据我所知)
#!/bin/bash
echo "Enter variable name: "
read variable_name
echo "Enter variable value: "
read variable_value
echo "adding " $variable_name " to environment variables: " $variable_value
echo "export "$variable_name"="$variable_value>>~/.bashrc
echo $variable_name"="$variable_value>>~/.profile
echo $variable_name"="$variable_value>>/etc/environment
source ~/.bashrc
source ~/.profile
echo "do you want to restart your computer to apply changes in /etc/environment file? yes(y)no(n)"
read restart
case $restart in
y) sudo shutdown -r 0;;
n) echo "don't forget to restart your computer manually";;
esac
exit
将此行保存在shfile中,然后使其可执行并运行它!
chmod -x insert_var.sh
,然后是bash insert_var.sh
。谢谢。
在Ubuntu系统上,使用以下位置:
系统范围内的持久变量,格式为JAVA_PATH=/usr/local/java
store in
/etc/environment
系统范围内的持久变量,引用诸如以下变量的
export PATH="$JAVA_PATH:$PATH"
存储
/etc/.bashrc
用户特定的持久变量,格式为PATH DEFAULT=/usr/bin:usr/local/bin
store in
~/.pam_environment
有关#2的更多详细信息,请检查此 Ask Ubuntu答案。注意:#3是Ubuntu的建议,但在现实世界中可能存在安全隐患。
一个特定的示例:我安装了Java 7和Java 6,我需要运行一些版本为6的构建,而其他版本需要运行7。因此,我需要动态更改,JAVA_HOME
以便maven可以为每个构建选择所需的内容。我做了以下事情:
j6.sh
脚本只是将JAVA_HOME=...
路径导出到j6安装...j6.sh
在相应的命令终端中运行source 。默认情况下,my JAVA_HOME
设置为J7。希望这可以帮助。
如果适合任何人,这里有一些简要的准则,用于永久添加环境变量。
vi ~/.bash_profile
将变量添加到文件中:
export DISPLAY=:0
export JAVA_HOME=~/opt/openjdk11
立即应用所有更改:
source ~/.bash_profile
来源:https : //www.serverlab.ca/tutorials/linux/administration-linux/how-to-set-environment-variables-in-linux/