tmux
auggie

为什么使用 tmux

tmux 是一个 terminal multiplexer(终端复用器),可以启动一系列的终端会话。方便使用。

tmux 同时解绑了会话和终端窗口的概念。关闭终端窗口,会话并不会终止,而是在运行。

因为在 shell 中编写文件的时候,需要开多个终端,还要用鼠标切屏有点麻烦。

安装 : sudo apt-get install tmux

tmux 的使用

image-20220501100622865

session

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# 启动命名 tmux
$ tmux new -s <name>
$ ts <name>

# 退出 tmux 会话
$ tmux detach

# 查看所有 tmux 会话
$ tmux ls
$ tl

# 进入 tmux 会话
$ tmux attach -t <编号> | <会话名>
$ ta

# 杀死会话
$ tmux kill-session -t <编号> | <会话>
$ tkss

# 切换会话
$ tmux switch -s <id> | <session-name>

# tmux 的其他命令

# 列出所有快捷键,及其对应的 Tmux 命令
$ tmux list-keys

# 列出所有 Tmux 命令及其参数
$ tmux list-commands

# 列出当前所有 Tmux 会话的信息
$ tmux info

# 重新加载当前的 Tmux 配置
$ tmux source-file ~/.tmux.conf

pane

划分窗格

1
2
3
4
5
# 划分上下两个窗格
$ tmux split-window

# 划分左右两个窗格
$ tmux split-window -h

移动光标

1
$ tmux select-pane -UDLR

快捷键

  • ctrl+b %:划分左右窗格

  • ctrl+b “:划分上下窗格

  • ctrl+b !: 将 pane 拆分成一个 window

  • ctrl+b z: 将 pane 全屏显示

  • ctrl+b 方向键:移动光标

  • ctrl+b x: 关闭窗格

window

  • ctrl+b c:create
  • ctrl+b ,: rename
  • ctrl+b w: select

oh-my-tmux

github: oh my tmux

使用 tmux 当然要美化一下捏,zsh 中的 tmux plugin 也挺好用的捏

1
2
3
4
5
6
$ cd
$ git clone https://github.com/gpakosz/.tmux.git
$ ln -s -f .tmux/.tmux.conf
$ cp .tmux/.tmux.conf.local .

$ tmux source ~/.tmux.conf

问题:色彩显示不完全

需要在 .tmux.conf 中配置一下 color

1
2
if-shell '[ $(uname -s) = Linux ]' \
'set -g default-terminal "xterm-256color"'