From 29f3b971d29aaf95a947b74394e84db44eac6d26 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Wed, 9 Nov 2022 14:59:23 +0800 Subject: [PATCH] feat: add `Tmux.md` cheatsheet. (#33) --- README.md | 1 + docs/tmux.md | 243 ++++++++++++++++++++++++++++++++++++++++ scripts/assets/tmux.svg | 3 + 3 files changed, 247 insertions(+) create mode 100644 docs/tmux.md create mode 100644 scripts/assets/tmux.svg diff --git a/README.md b/README.md index 283e39d..a88b4d1 100644 --- a/README.md +++ b/README.md @@ -118,6 +118,7 @@ Quick Reference [Sed](./docs/sed.md) [SSH](./docs/ssh.md) [Screen](./docs/screen.md) +[Tmux](./docs/tmux.md) [YUM](./docs/yum.md) diff --git a/docs/tmux.md b/docs/tmux.md new file mode 100644 index 0000000..37600ff --- /dev/null +++ b/docs/tmux.md @@ -0,0 +1,243 @@ +Tmux 备忘清单 +=== + +最常用的快捷键和命令的 tmux 备忘单快速参考 + +Tmux CLI +------- + +### 新会话 + + +开始一个新的会话 + +```bash +$ tmux +$ tmux new +$ tmux new-session + +:new +``` + +开始一个名为 myname 的新会话 + +```bash +$ tmux new -s myname + +:new -s myname +``` + +显示所有会话,或者 Ctrl + b + s 快捷键 + +```bash +$ tmux ls +$ tmux list-sessions +``` + +### 附加会话 + + +附加到上一个会话 + +```bash +$ tmux a +$ tmux at +$ tmux attach +$ tmux attach-session +``` + +附加到命名 + +```bash +$ tmux a -t myname +``` + +附加到名为 myname 的会话 + +```bash +$ tmux a -t myname +$ tmux at -t myname +$ tmux attach -t myname +$ tmux attach-session -t myname +``` + +### 终止会话 + +按名称终止会话 + +```bash +$ tmux kill-ses -t myname # 杀死/删除会话 +$ tmux kill-session -t myname +``` + +杀死/删除除当前会话之外的所有会话 + +```bash +$ tmux kill-ses -a +``` + +杀死/删除除 myname 之外的所有会话 + +```bash +$ tmux kill-ses -a -t myname +``` + +### Tmux 帮助 + +```bash +$ tmux info +``` + +### 配置 + +重新加载配置 + +```bash +$ tmux source-file ~/.tmu­x.conf +``` + +显示配置 + +```bash +$ tmux show-options -g +``` + +### 复制模式 + +命令 | 描述 +:- | - +`Ctrl+b` `[` | 进入复制模式 +`` | 开始选择 +`Enter` | 复制选择 +`q` | 退出复制模式 +`Ctrl+b` `]` | 粘贴 buffer_0 的内容 + + +主要作用类似于在 [Vim](./vim.md#动作) 中选择文本 + +Tmux 快捷键 +---------- + +### 入门 + + +快捷键/命令 | 描述 +:- | - +| `Ctrl+b` `?` | List all shortcuts | + + +---- + +显示每个会话、窗口、窗格等 + +```bash +$ tmux info +``` + +### 窗格(拆分) + + +快捷键/命令 | 描述 +:- | - +`Ctrl+b` `"` _/_ `%` | 水平分割/垂直 +`Ctrl+b` `!` | 窗格 -> 窗口 +`Ctrl+b` `x` | 杀死窗格 +`Ctrl+b` \ | 导航窗格 +`Ctrl+b` \ | 切换布局 +`Ctrl+b` `{` _/_ `}` | 向左/向右移动 +`Ctrl+b` `o` | 转到下一个窗格 +`Ctrl+b` `z` | 切换全屏 +`Ctrl+b` `;` | 切换最后一个窗格 +`Ctrl+b` `q` | 显示号码 +`Ctrl+b` `q` `0`...`9` | 转到 # 窗格 + + +### Window (Tabs) + + +快捷键/命令 | 描述 +:- | - +`Ctrl+b` `c` | 创建窗口 +`Ctrl+b` `p` _/_ `n` | 上一个/下一个窗口 +`Ctrl+b` `"` _/_ `%` | 水平分割/垂直 +`Ctrl+b` `w` | 列表窗口 +`Ctrl+b` `,` | 重命名窗口 +`Ctrl+b` `f` | 查找窗口 +`Ctrl+b` `l` | 最后一个窗口 +`Ctrl+b` `.` | 移动窗口 +`Ctrl+b` `&` | 关闭窗口 +`Ctrl+b` `0`...`9` | 转到#窗口 + + +### 会话(Windows 组) + +快捷键/命令 | 描述 +:- | - +`Ctrl+b` `d` | 从会话中分离 +`Ctrl+b` `s` | 显示所有会话 +`Ctrl+b` `$` | 重命名会话 +`Ctrl+b` `(` _/_ `)` | 上一届/下一届 + + +Tmux 命令模式 +----------- + +### 用法 + + +快捷键/命令 | 描述 +:- | - +`Ctrl+b` `:` | 进入命令模式 + + +### 调整大小 + +快捷键/命令 | 描述 +:- | - +`resize-pane -D 20` | 缩小尺寸 +`resize-pane -U 20` | 调整大小 +`resize-pane -L 20` | 向左调整大小 +`resize-pane -R 20` | 向右调整大小 + +### 清单 + +快捷键/命令 | 描述 +:- | - +`list-keys` | 所有命令 +`list-panes` | 所有窗格 +`list-windows` | 所有窗口 + +### 复印 + +快捷键/命令 | 描述 +:- | - +`list-buffers` | 列出所有缓冲区 +`show-buffer` | 显示 #0 内容 +`capture-pane` | 窗格的副本 +`choose-buffer` | 显示和粘贴 +`save-buffer a.txt` | 保存到文件 +`delete-buffer -b 1` | 删除缓冲区 1 + +### 环境 + +快捷键/命令 | 描述 +:- | - +`set -g OPTION` | 为所有会话设置 +`setw -g OPTION` | 为所有窗口设置 +`setw -g mode-keys vi` | 启用 vi 模式 +`set -g prefix C-a` | 设置前缀 + +### 杂项 + +快捷键/命令 | 描述 +:- | - +`swap-pane -s 3 -t 1` | 交换窗格 +`swap-window -t -1` | 向左移动 +`setw synchronize-panes` | 同步窗格 +`join-pane -t :#` | 加入窗格 + +另见 +--- + +- [Tmux 开源仓库](https://github.com/tmux/tmux) _(github.com)_ +- [Tmux Cheat Sheet & Quick Reference](https://tmuxcheatsheet.com/) _(tmuxcheatsheet.com)_ \ No newline at end of file diff --git a/scripts/assets/tmux.svg b/scripts/assets/tmux.svg new file mode 100644 index 0000000..7c5519f --- /dev/null +++ b/scripts/assets/tmux.svg @@ -0,0 +1,3 @@ + + +