我知道和之间的区别~/.bash
。我知道(如果我错了,请纠正我) 中的配置仅适用于特定用户和终端。 中的配置仅适用于用户。 ~/.profile
/etc/profile
~/.bash
~/.profile
/etc/environment
但有时我发现一些配置(例如环境变量)也在文件中设置。这些文件有什么区别?
我还发现在/etc/environment
文件中我们不导出环境变量,而我们从~/.bash
和导出环境变量(如PATH) ~/.profile
-
export JAVA_HOME=/usr/lib/java #for ~/.bash or ~/.profile
JAVA_HOME=/usr/lib/java #for /etc/environment
为什么这两种类型之间存在差异?
提前致谢。
答案1
/etc/environment
不被 Bash 使用,但被 read bypam-env在登录时。
这就是为什么/etc/environment
不允许任何 shell 语法,而只允许简单的
NAME=value
線。