tmux 简介
tmux 是一个开源终端复用器,用于在一个终端窗口中运行多个终端会话。它专为解决 SSH 掉线后无法继续原会话的问题而设计。相比普通 bash/zsh,tmux 允许会话独立于 SSH 连接存在,掉线后可随时重新 attach。
| 工具 | SSH 掉线后还能连上原来的会话吗? | 说明 |
|---|---|---|
| 普通 bash / zsh | 不能 | 会话结束,进程收到 SIGHUP 信号,通常被杀死 |
| tmux | 能 | 会话独立于 SSH 连接存在,掉线后可以随时重新 attach |
| screen | 能 | 和 tmux 功能几乎一样,但 tmux 现在更流行、功能更强 |
Windows Git Bash 下安装使用
本工具可从 msys2 提取,在 Git for Windows 的 Git Bash (MingW64) 下正常使用。
-
确保已安装 Git for Windows 下载地址:https://git-scm.com/download/win
-
获取 tmux 安装包 下载适用于 Git Bash 的 tmux 包(如基于 msys2 的版本),释放文件到 Git 安装目录下的
usr文件夹。- 默认路径示例:
C:\Program Files\Git\usr - 实际可执行文件通常在:
C:\Program Files\Git\usr\bin\tmux.exe
- 默认路径示例:
-
命令行安装方式 在 Git Bash 环境下,可通过以下命令安装:
git clone https://github.com/hongwenjun/tmux_for_windows.git cd tmux_for_windows/ unzip -x tmux_for_git-bash.zip -d /usr -
启动 tmux 打开 Git Bash,输入
tmux即可启动。
tmux 典型用法
- 新建会话:
tmux new -s mytrain(-s后为会话名) - 列出会话:
tmux ls - 重新连接:
tmux attach -t mytrain或简写tmux a -t mytrain - 脱离会话:按
Ctrl+b再按d(程序继续后台运行) - 关闭会话:在会话中输入
exit或tmux kill-session -t 会话名
常用快捷键
在 tmux 里按 Ctrl+b 后再按以下键:
d→ detach(脱离会话)c→ 新建窗口n/ → 切换下一个/上一个窗口

