【问题标题】:Linux/Unix environment variablesLinux/Unix 环境变量
【发布时间】:2011-01-28 11:20:36
【问题描述】:

Linux/Unix 环境变量保存在哪里?如何添加自己的环境变量并使其持久化,而不仅仅是在当前运行的脚本中?

【问题讨论】:

标签: linux unix environment-variables


【解决方案1】:

您可以将它们添加到您的个人资料中,例如~/.bash_profile。全局配置文件通常位于 /etc。例如/etc/profile。如果有的话,也可以看看/etc/profile.d 目录。

【讨论】:

  • 我看不到 /etc/profile,但我看到 /etc/profile.d 其中包含 gvfs-bash-completion.sh 和 speechd-user-port.sh 文件。我应该怎么做才能为所有用户添加环境变量?
  • /etc/profile.d 中的那些是自定义配置文件。对于所有用户,如果您没有/etc/profile,请创建它。
【解决方案2】:

要查看环境变量,请使用printenv 命令。

要设置新变量,您可以使用~/.bash_rc 文件:

export new_variable=10

new_variable 将可供所有 shell 访问。

【讨论】:

  • 谢谢。你的意思是 ~/.bashrc 文件吗?为所有用户设置环境变量怎么样?
  • = 周围没有空格。 export new_variable=10 不然不行。
【解决方案3】:

您在寻找export 关键字吗?

更多信息:

【讨论】:

    【解决方案4】:

    export 语句添加到~/.bash_login

    【讨论】:

    • 我没有看到 ~/.bash_login 文件。我可以创建它吗? ~/.bash_login 和 ~/.bashrc 有什么区别?
    • @alex 你可以创建一个。 bash_login 为登录 shell 运行,bashrc 为交互式 shell 运行 - 查看手册页了解详细信息。