应用介绍
tmux 是一个终端复用器。它做两件事:把一个终端窗口拆成多个窗口和面板,以及——更要紧的那件——让这些会话独立于连着它的终端存在。
第二点是它真正不可替代的地方。平时在服务器上跑一个耗时几小时的任务,SSH 一断,进程收到挂断信号就死了,前面白跑。先起一个 tmux 会话再跑,情况就完全不同:随时可以 detach 走人,甚至直接合上笔记本,会话和里面的进程都在服务器上继续跑,回头重新连上去 attach 一下,画面和上次离开时一模一样。
它本身不负责连接,连接是 SSH 的事。tmux 跑在你敲下 tmux 的那台机器上——在本地敲就是本地的复用器,在服务器上敲会话就活在服务器上。本地用它分屏跑几个进程同样顺手,只是断线续传这个场景更常被人记住。
会话持久化:会话脱离终端独立存在,detach 之后进程照跑,换台机器 attach 回来接着用,网络中断不影响里面的任务。
窗口与面板:一个会话里可以开多个窗口,每个窗口再横竖切分成多个面板,几个进程的输出同屏对照着看。
状态栏:底部常驻一条状态栏,显示会话名、窗口列表、主机名和时间,格式和内容都能自己定。
复制模式:可以进入复制模式翻历史输出、按关键词搜索、选中复制,纯键盘完成,不用鼠标去拖终端滚动条。
会话共享:两个人可以 attach 到同一个会话上看同一块屏幕,结对调试或者带人排查问题时很直接。
可脚本化:所有操作都有对应命令,可以写一个脚本一次把项目要用的窗口、面板和命令全部布置好。
配置灵活:快捷键前缀、按键绑定、外观配色都能在配置文件里改,不喜欢默认的 Ctrl-b 可以换成别的。
第二点是它真正不可替代的地方。平时在服务器上跑一个耗时几小时的任务,SSH 一断,进程收到挂断信号就死了,前面白跑。先起一个 tmux 会话再跑,情况就完全不同:随时可以 detach 走人,甚至直接合上笔记本,会话和里面的进程都在服务器上继续跑,回头重新连上去 attach 一下,画面和上次离开时一模一样。
它本身不负责连接,连接是 SSH 的事。tmux 跑在你敲下 tmux 的那台机器上——在本地敲就是本地的复用器,在服务器上敲会话就活在服务器上。本地用它分屏跑几个进程同样顺手,只是断线续传这个场景更常被人记住。
软件功能
会话持久化:会话脱离终端独立存在,detach 之后进程照跑,换台机器 attach 回来接着用,网络中断不影响里面的任务。
窗口与面板:一个会话里可以开多个窗口,每个窗口再横竖切分成多个面板,几个进程的输出同屏对照着看。
状态栏:底部常驻一条状态栏,显示会话名、窗口列表、主机名和时间,格式和内容都能自己定。
复制模式:可以进入复制模式翻历史输出、按关键词搜索、选中复制,纯键盘完成,不用鼠标去拖终端滚动条。
会话共享:两个人可以 attach 到同一个会话上看同一块屏幕,结对调试或者带人排查问题时很直接。
可脚本化:所有操作都有对应命令,可以写一个脚本一次把项目要用的窗口、面板和命令全部布置好。
配置灵活:快捷键前缀、按键绑定、外观配色都能在配置文件里改,不喜欢默认的 Ctrl-b 可以换成别的。

