Original Note

tmux 常用命令笔记 - Read

tmux 常用命令笔记

Best Practice(最佳实践)

日常实践建议

  • 命名会话:给会话起有意义的名字(如项目名),方便管理和切换
  • 远程工作必备:SSH 连接服务器时始终使用 tmux,防止网络断开导致工作丢失
  • 上下文切换:不同任务使用不同会话,通过分离/附加来切换工作上下文
  • 配置同步:将 .tmux.conf 加入 dotfiles 仓库,跨平台同步配置

具体示例:远程开发工作流

# 1. SSH 连接服务器后,创建命名会话
ssh user@server
tmux new -s project-alpha

# 2. 在会话中开展工作:分割窗格,运行服务
C-b %          # 左右分割
C-b "          # 上下分割
# 左窗格:运行编辑器
# 右窗格上:运行开发服务器
# 右窗格下:git 操作、测试等

# 3. 下班时分离会话(工作状态保持)
C-b d

# 4. 次日重新附加继续工作
tmux attach -t project-alpha

基本概念

  • 前缀键C-b = Ctrl+b(先按前缀键,释放后再按命令键)
  • 会话(Session):tmux 的最外层容器,可分离/附加
  • 窗口(Window):会话中的虚拟桌面
  • 窗格(Pane):窗口中的分割视图

会话管理命令

命令 说明
tmux 创建新会话
tmux new -s <name> 创建命名会话
tmux ls 列出所有会话
tmux attach -t <name|number> 附加到会话
tmux rename-session -t <old> <new> 重命名会话
tmux kill-session -t <name|number> 删除指定会话

会话快捷键

快捷键 说明
C-b d 分离当前会话
C-b D 选择要分离的会话

窗格操作

快捷键 说明
C-b % 左右分割窗格
C-b " 上下分割窗格
C-b <arrow> 切换到对应方向的窗格
C-b C-<arrow> 调整窗格大小
C-b z 窗格全屏/恢复
exitCtrl-d 关闭当前窗格

窗口操作

快捷键 说明
C-b c 创建新窗口
C-b p 切换到上一个窗口
C-b n 切换到下一个窗口
C-b <number> 切换到指定编号的窗口
C-b , 重命名当前窗口
C-b ! 把当前pane拆出来分为一个新的window

插件使用流程(自动保存/恢复)

配置完成后,平时正常使用 tmux:

tmux new -s cs197
# 创建一些 window、pane,改好 window 名字

手动保存Ctrl+b 然后 Ctrl+s(之后插件会自动保存)

电脑重启后恢复

tmux
# 如果自动恢复正常,会直接恢复之前的工作区
如果没有恢复,按:Ctrl+b 然后 Ctrl+r

帮助

快捷键 说明
C-b ? 显示所有可用命令