unix – 是否可以同时运行两个不同版本的tmux?

前端之家收集整理的这篇文章主要介绍了unix – 是否可以同时运行两个不同版本的tmux?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Tmux 1.8崩溃了iOS Prompt应用程序.

但我需要1.8才能获得iTerm2集成.

所以我希望我能以某种方式使我的服务器能够运行两个tmux服务器.但是,当我运行1.8服务器时,看起来Tmux 1.6只是以状态码1退出.

我怀疑是否有人试图这样做,但我好奇……

您可以运行多个tmux实例(甚至不同版本),但它可能无法正常工作:它们将完全独立(不同的会话,窗口,窗格,选项值等). -L或-S选项用于指定服务器套接名称或路径名.
tmux new              # new session in the server at the "default" socket
tmux -L other attach  # new session in the server at the "other" socket

默认套接字和-L套接字位于$TMPDIR / tmux- $UID /中,但如果要自己指定完整路径名,则可以使用-S.

当您在tmux会话“内部”时,TMUX环境变量指定服务器套接字的路径,因此如果您只是在与“周围”服务器通信,则通常不需要指定套接字(路径)名称:您可以只需使用tmux neww在当前会话中创建一个新窗口(无论它使用什么套接字路径名).

但是,尝试运行两个显着不同版本的tmux还有另一个问题. tmux二进制文件和正在运行的服务器必须使用相同的“协议版本”.由于一些内部更改,1.6和1.8版本使用不同的协议版本.这意味着您不能使用1.6二进制文件与1.8服务器(即使用1.8二进制文件启动的服务器)进行通信,反之亦然.因此,即使您可能不需要指定套接名称(在会话中“运行”),您可能需要在尝试与不同服务器通信时指定二进制文件.

tmux attach               # 1.8 talking to existing 1.8 "default" server
tmux-1.6 -L other attach  # 1.6 talking to existing 1.6 "other" server

您可以通过设置环境变量并使用shell函数(或脚本,但注意不要创建无限循环)来简化一些事情.

tmux() { command "${TMUXBIN:-tmux}" "$@"; }

猜你在找的Bash相关文章