Featured image of post Tmux

Tmux

Screen 上位替代

后台 shell 常驻工具

Reference: tmux wiki

Fully tutorial

为什么使用 tmux

在我们日常使用 shell 运行命令的时候可能我们是使用 ssh 链接的服务器。而当 ssh 断开的时候终端也会随之中断。在 ubuntu 系统中我们可以使用 screen 来让 shell 命令挂在后台运行。而 tmux 作为 screen 的上位替代则比 screen 带来了更多的功能。

Feature

tmux 的结构逻辑跟linux系统很像. 如果你对linux系统熟悉的话可以简单将tmux的session理解为用户. windows 就是用户桌面环境. 分屏功能就像是你在一个window中可以同时打开多个软件.

Installation | 安装 tmux

# ubuntu
sudo apt install tmux
# macos
brew install tmux

quick start

  1. 启动 tmux
  • 不带参数执行此命令会自动创建一个新的 session(在用户不主动关闭的情况在 session 即使在 tmux 关闭后仍然会继续运行)
tmux
  1. 分屏:
  • 左右分屏: “ctrlb + % "
  • 上下分屏: “ctrlb + " "
  1. 切换焦点(当你需要切换同一个 session 中不同的窗口时)
  • “ctrl” + " b + “<方向键>”
  1. 创建新的 window: “ctrlb + c”

  2. 切换 window: “ctrlb + " | 切换到下一个window: “ctrlb + n”

一个 session 可以包括多个 windows

  1. 退出 tmux: “ctrlb” + “d”

  2. 列出 session

tmux ls
  1. 恢复 tmux:
tmux a
  1. 删除 session:
tmux kill-session -t <session_name>

Advance setting

session

# 创建制定名称的session
tmux new -s <session_name>

# 回复到指定的session
tmux a -t <session_name>

# 窗口分屏快速切换聚焦(摁下q的时候会看到分屏序号)
# "ctrlb + q + <index>" 

# tmux 概览(你会看到当前系统中所有的sesion和窗口,通过方向键就能快速预览窗口,enter就能直接切换到聚焦的window)
# “ctrlb + w”

tmux 配置文件 (解锁鼠标控制

  1. 进入配置文件
nano ~/.tmux.conf
  1. 开启鼠标调整窗口大小的支持: “set -g mouse on”

  2. 更改快捷键: “set -g prefix C-s”(意思是将原本用 ctrl+b 的快捷键改为用 ctrl+s)

Cheetsheet

A winner is just a loser who tried one more time.
Robust AI
使用 Hugo 构建
主题 StackJimmy 设计