iSH 上安装和使用Tmux

Tmux 对我最重要的一个作用是:避免网络断开或Terminal误关,再次登录又需要花很多时间恢复到之前状态。另外就是Tmux 窗口的功能可以让我在windows 系统上的 Git bash下操作更方便。

在 iSH 上安装 Tmux

apk add tmux
在 iSH 中安装 Tmux
上面代表已装过

输入 tmux 命令进入 Tmux 窗口,在 Tmux 窗口里输入 exitCtrl-d 退出 Tmux 并释放会话。

在 Tmux 中输入Ctrl-B ? 能查看帮助,⚠️注意是同时按住 CtrlB 键,松开后再按 ? 键。

Tmux 命令大全
Ctrl-B ? 查看帮助

结构

一个 Tmux 可以包含多个 session(会话),一个 session 可以包含多个 window (窗口),一个 window 可以包含多个 pane(窗格)。

Tmux
|__ Session A
|   |__ Window A1
|   |   |__ Pane A1a
|   |   |__ Pane A1b
|   |
|   |__ Window A2
|       |__ Pane A2a
|
|__ Session B
    |__ Window B1
    |   |__ Pane B1a
    |
    |__ Window B2
        |__ Pane B2a
        |__ Pane B2b

Session (会话)的操作

  • tmux a # 打开最近一个会话,比较适合ssh 连到服务器
  • ctrl-b d :从当前会话中跳出来,会话未释放
  • ctrl-d:⚠️ 退出并释放当前会话
  • ctrl-b w 查看会话+窗口树状结构

Window(窗口)的操作

Tmux 创建窗口
ctrl-b w : 直观的查看选择想要用的窗口。
  • ctrl-b c:创建一个新窗口,底部状态栏会显示多个窗口的信息。
  • ctrl-b p:切换到上一个窗口。
  • ctrl-b n:切换到下一个窗口。
  • ctrl-b <序号>:切换到指定编号的窗口,其中的<序号>是状态栏上的窗口序号。
  • ctrl-b w:直观的从列表中选择窗口,如上图所示。
  • ctrl-b ,:对窗口重命名。

Tmux 窗口是个很实用的功能,因为在Windows 系统上的Git bash 没有没有标签功能,只能打开多个层叠窗口,用起来不方便,而安装了 Tmux 的 Git bash 能很好的切换窗口。

Pane(窗格)的操作

  • ctrl-b %:将当前窗格垂直切割
  • ctrl-b “:将当前窗格水平切割
  • ctrl-d:关闭当前窗格
  • ctrl-b <方向键>:移动光标到不同窗格
  • ctrl-b o:移动光标到另一窗格
  • ctrl-b z:将当前窗格全屏 / 取消全屏
  • ctrl-b-<方向键>(按住Ctrl-b不松开按方向键):按箭头方向调整窗格大小
  • ctrl-b {:当前窗格与上一个窗格交换位置
  • ctrl-b }:当前窗格与下一个窗格交换位置

其它

Tmux 下的 vim 粘贴会出现自动缩进,这不是大家希望看到的,在粘贴前输入:set paste,粘贴完后输入:set nopaste (否则会影响自动缩进)。

Tmux 粘贴缩进

也可以写一个vim 映射快捷键来实现粘贴。

nnoremap ,p :set paste<CR>"+p:set nopaste<CR>

Featured 图片