【问题标题】:How to stop making tmux auto setting RBENV_VERSION如何停止使 tmux 自动设置 RBENV_VERSION
【发布时间】:2013-02-06 19:36:27
【问题描述】:

当我启动 tmux 时,tmux 会自动设置 RBENV_VERSION...

有人知道如何阻止它吗?

因为它自动设置它,我需要这样做

$ export RBENV_VERSION

取消设置并使 .ruby-version 工作。谢谢。

【问题讨论】:

  • 哦,也许我找到了原因。 mabye tmux 是自动设置。 :O
  • 编辑标题和正文

标签: ruby shell tmux rbenv


【解决方案1】:

tmux 本身永远不会自行设置(或取消设置)RBENV_VERSION。您有一些配置导致了这种情况。

我的猜测是 RBENV_VERSION 是在您启动 tmux 服务器时设置的,现在它是 tmux “全局环境”(所有人继承的基础环境)的一部分tmux 启动的进程)。你可以看看这个

tmux show-environment -g | grep RBENV

如果它存在,您可以使用以下命令将其删除:

tmux set-environment -gu RBENV_VERSION

如果您经常发现自己在 RBENV_VERSION 已设置时启动 tmux(并且您不希望它在“内部”发送 tmux),那么您可以添加上述命令到您的 ~/.tmux.conf 文件中,以确保每次启动服务器时都将其清除。

另一种可能性是它是您的tmux“会话环境”的一部分;该环境在全局环境之上“分层”,以形成由会话中为新窗口和窗格启动的进程所继承的环境。你可以用这个命令检查它(在会话中运行它,或者添加-t sessname来指定一个会话):

tmux show-environment | grep RBENV

如果存在,您可以用类似的方式取消设置:

tmux set-environment -u RBENV_VERSION

最后,如果变量在全局或会话环境中都不存在,那么它可能来自您的 shell 初始化文件中的某些内容。默认情况下,tmux 会启动登录 shell,因此请务必检查 shell 配置的相应位(例如 .bash_profile.bash_login.profile 等)以及其他任何位初始化。

【讨论】:

  • 试了第一个,发现RBENV_VERSION是在全局环境中设置的!谢了!
  • 这太棒了!我也遇到了同样的问题,将 set-environment -gu RBENV_VERSION 添加到我的 ~/.tmux.conf 顶部解决了它。再次感谢!
猜你喜欢
  • 2020-02-25
  • 1970-01-01
  • 1970-01-01
  • 2018-05-13
  • 1970-01-01
  • 1970-01-01
  • 2014-10-07
  • 1970-01-01
  • 2013-01-12
相关资源
最近更新 更多