Tmux 使用教程

tmux 是终端复用工具,可以在一个终端中创建多个窗口和分屏。即使 SSH 断开,tmux 会话中的程序通常仍会继续运行,之后可以重新连接。

基本概念

  • 会话(Session):一组独立的终端工作环境。
  • 窗口(Window):会话中的一个终端页面。
  • 窗格(Pane):窗口中的分屏区域。

启动和查看会话

tmux                 # 新建会话
tmux new -s work     # 新建名为 work 的会话
tmux ls              # 查看所有会话

例如,以下输出表示有一个名为 0 的会话,其中有一个窗口:

0: 1 windows (created Wed Oct  7 08:53:53 2026)

接回该会话:

tmux attach -t 0

简写形式:

tmux a -t 0

脱离和重新连接

在 tmux 会话中,按 Ctrl-b,松开后再按 d,即可脱离会话。会话中的程序会继续运行。

重新登录服务器后,使用以下命令接回会话:

tmux attach -t 0

如果会话名是 work,则运行:

tmux attach -t work

常用快捷键

tmux 默认前缀键是 Ctrl-b。使用时先按 Ctrl-b,松开后再按对应按键。

操作 快捷键
脱离会话 Ctrl-b,然后 d
新建窗口 Ctrl-b,然后 c
下一个窗口 Ctrl-b,然后 n
上一个窗口 Ctrl-b,然后 p
列出并选择窗口 Ctrl-b,然后 w
重命名当前窗口 Ctrl-b,然后 ,
上下分屏 Ctrl-b,然后 "
左右分屏 Ctrl-b,然后 %
切换窗格 Ctrl-b,然后方向键

关闭当前窗格或窗口,可以在里面输入:

exit

也可以按 Ctrl-d。如果关闭会话中的最后一个窗口,会话也会结束。

会话管理命令

tmux ls                         # 查看所有会话
tmux new -s deploy              # 新建 deploy 会话
tmux attach -t deploy           # 接回 deploy 会话
tmux kill-session -t deploy     # 关闭 deploy 会话
tmux kill-server                # 关闭 tmux 服务及其所有会话

执行 kill-session 或 kill-server 前,请确认会话中的任务不再需要运行。

运维场景示例

创建一个用于部署的会话:

tmux new -s deploy

在会话中执行部署命令。需要暂时离开时,按 Ctrl-b,再按 d。

重新登录服务器后,运行以下命令继续查看或操作:

tmux attach -t deploy

也可以在 tmux 中持续查看日志:

tail -f /var/log/syslog

注意事项

tmux 适合保持交互式终端任务,例如部署操作、日志查看和临时脚本。对于需要长期运行、自动启动或异常后自动重启的正式服务,建议使用 systemd 等服务管理工具。