如何停止使用tmux自动设置RBENV_VERSION

时间:2013-02-21 13:02:22

标签: ruby shell tmux rbenv

当我启动tmux时,

tmux自动设置RBENV_VERSION ...

任何人都知道如何阻止它?

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

$ export RBENV_VERSION

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

1 个答案:

答案 0 :(得分:13)

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

我的猜测是,启动 tmux 服务器时设置了RBENV_VERSION,现在它已成为 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等),如下所示:以及任何其他初始化位。