我有一个非常简单的 tmux 会话,运行着两个打开的窗口;其中一个用于本地黑客攻击,另一个用于工作。
我想做的是简单地连接到黑客窗口,同时在另一个终端中打开工作窗口。但是,一旦我连接到 tmux,所有命令都会发送到两个窗口,所以如果我切换到另一个窗口,另一个终端会发生同样的事情,反之亦然。
有没有办法让我简单地分别连接到每个窗口?
Chr*_*sen 167
两个客户端同时切换窗口的原因是因为它们都连接到同一个会话(“当前窗口”是会话的属性,而不是客户端)。您可以做的是将一个或多个窗口链接到多个不同的会话中。由于每个会话都有自己的“当前窗口”,因此您可以在每个会话中独立切换窗口。
使用此功能的最简单方法是使用命令的“分组会话”功能new-session:
$ tmux new-session -t 'original session name or number'
Run Code Online (Sandbox Code Playgroud)
查看当前可用的会话:
$ tmux list-sessions
Run Code Online (Sandbox Code Playgroud)
组中的每个会话将自动共享同一组窗口:在组的一个会话中打开/链接(或关闭/取消链接)窗口会自动导致同一窗口在该组的所有其他会话中链接(或取消链接)团体。
完成“额外”会话后,您可以使用kill-session. 除非您的会话是它们唯一链接的会话,否则它们本身不会被终止。或者,您可以像往常一样断开“额外”会话(前缀d,或detach-client);如果您确实保留了您的“额外”会话(通过简单地与其分离),您可能想要给它一个描述性名称(前缀$或rename-session),以便您轻松识别它并稍后重新连接到它(您可能还想给“原始”会话也是一个名称)。
如果您不想自动共享一组动态窗口,那么您可以使用link-window(和unlink-window)将单个窗口带入(和带出)您自己的“个人”会话;这提供了对“分组会话”所基于的相同核心功能(链接到多个会话的窗口)的非自动和较低级别的访问。