在重新连接时使Tmux导出显示

问题描述 投票:1回答:1

我正在使用2.6版Tmux进行SSH连接,并且在bash环境DISPLAY不等于Tmux DISPLAY时遇到了一些问题-这使得无法显示任何内容。

经过一番搜索之后,似乎正在运行

export DISPLAY="`tmux show-env | sed -n 's/^DISPLAY=//p'`"

是解决方案,但是有时在重新连接后,Tmux DISPLAY被重置为bash正在使用的东西以外的东西,并且它再次断裂。

我尝试跑步

set-hook -g client-attached 'run-shell update_display.sh'

update_display.sh中的.tmux.conf文件中仅包含上面的export-command,但是这没有做任何事情。为了进行测试,我尝试运行

run-shell "export DISPLAY='testing'"

同样在.tmux.conf文件中,这甚至都没有改变DISPLAY

我在这里错过明显的东西吗? Tmux是否不允许这样导出,或者发生了什么?

bash tmux
1个回答
0
投票

使用run-shell运行的命令不会影响tmux中的全局环境(除非您运行“ tmux setenv”,所以您的run-shell命令将不起作用。

如果要显式设置tmux的DISPLAY,请使用“ tmux setenv DISPLAY ...”,而不是'run-shell“ export DISPLAY ...”。]]

[更改的原因很可能是因为它处于更新环境中(默认情况下),并且您正在从具有新DISPLAY(或未设置DISPLAY的终端)进行连接。但这就是重点……如果没有发生,那么从tmux内部的shell运行“ tmux setenv”将无济于事。

© www.soinside.com 2019 - 2024. All rights reserved.