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

Tak*_*chi 8 ruby shell tmux rbenv

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

谁知道如何阻止它?

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

$ export RBENV_VERSION

取消它并制作.ruby-version工作.谢谢.

Chr*_*sen 13

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

我的猜测是你在启动tmux服务器时设置了RBENV_VERSION ,现在它已成为tmux "全局环境"(由tmux启动的所有进程继承的基本环境)的一部分.你可以检查一下

tmux show-environment -g | grep RBENV
Run Code Online (Sandbox Code Playgroud)

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

tmux set-environment -gu RBENV_VERSION
Run Code Online (Sandbox Code Playgroud)

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

另一种可能性是它是你的tmux "会话环境"的一部分; 此环境在全局环境的顶部"分层",以形成由为会话中的新窗口和窗格启动的进程继承的环境.您可以使用此命令检查它(在会话中运行它,或添加-t sessname以指定会话):

tmux show-environment | grep RBENV
Run Code Online (Sandbox Code Playgroud)

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

tmux set-environment -u RBENV_VERSION
Run Code Online (Sandbox Code Playgroud)

最后,如果变量在全局或会话环境中都不存在,那么它可能来自shell初始化文件中的某些内容.默认情况下,TMUX开始登录壳,所以一定要检查壳构型的相应的位(例如.bash_profile,.bash_login,.profile等等)以及初始化的任何其它位.