小编Vir*_*ato的帖子

bash_profile 或 bashrc 中的环境变量?

我发现这个问题 [博客]:.bashrc 和 .bash_profile 之间的区别非常有用,但在看到投票最多的答案(顺便说一句非常好)后,我还有其他问题。在投票最多的正确答案结束时,我看到以下声明:

请注意,您可能会在这里和那里看到将环境变量定义放在 ~/.bashrc 中或始终在终端中启动登录 shell 的建议。两者都是坏主意。

  1. 为什么这是一个坏主意(我不是想打架,我只是想了解)?

  2. 如果我想设置一个环境变量并将其添加到 PATH(例如 JAVA_HOME)中,它是放置导出条目的最佳位置?在~/.bash_profile~/.bashrc 中

  3. 如果问题 2 的答案是~/.bash_profile,那么我还有两个问题:

    3.1. 你会在~/.bashrc下放什么?只有别名?

    3.2. 在非登录 shell 中,我相信~/.bash_profile没有被“拾取”。如果 JAVA_HOME 条目的导出在 bash_profile 中,我是否能够执行javacjava命令?它会在 PATH 上找到它们吗?这就是为什么某些帖子和论坛建议将 JAVA_HOME 等设置为~/.bashrc 的原因吗?

    提前致谢。

bash path environment-variables bashrc .bash-profile

44
推荐指数
1
解决办法
6万
查看次数