程序员效率神器:一文掌握 tmux(服务器开发必备工具)

在日常开发或服务器运维中,你可能遇到过这些问题:

  • SSH 登录服务器跑任务,一断网程序就停止
  • 一个终端需要同时运行多个任务
  • 想一边看日志一边调试程序
  • 长时间运行脚本但又不想一直开着电脑

如果你遇到过这些问题,那么你一定需要一个工具 ------ tmux

很多后端工程师、运维工程师、AI工程师都把 tmux 当作 服务器必备工具

本文将带你从 0 到 1 掌握 tmux,包括:

  • tmux 是什么
  • tmux 的核心概念
  • tmux 安装方法
  • tmux 常用命令
  • 实战使用场景
  • tmux 高效配置技巧

看完这篇文章,你就可以熟练使用 tmux 了。


一、tmux 是什么

tmux(Terminal Multiplexer) 是一个 终端复用工具

简单理解:

tmux 可以让一个终端窗口同时运行多个终端。

你可以在一个终端中:

  • 同时运行多个程序
  • 分屏查看日志
  • 切换不同任务
  • 断线后继续运行任务

例如:

diff 复制代码
+-------------------------+
|       程序运行          |
+------------+------------+
|   日志监控  |   shell    |
+------------+------------+

这样就像在终端里拥有了一个 轻量级 IDE


二、为什么程序员都在用 tmux

tmux 的核心价值主要有三个:

1 远程任务不会中断

例如你在服务器运行:

复制代码
python train.py

如果 SSH 断开:

程序就停止了。

使用 tmux:

复制代码
tmux
python train.py

即使:

  • 关闭电脑
  • 网络断开

程序仍然在后台运行。


2 一个终端同时运行多个任务

你可以:

复制代码
窗口1 → 后端服务
窗口2 → 查看日志
窗口3 → shell

这样开发效率会非常高。


3 强大的分屏功能

tmux 支持像 IDE 一样的分屏:

diff 复制代码
+---------------------+
|       pane1         |
+-----------+---------+
|  pane2    | pane3   |
+-----------+---------+

可以同时查看多个终端任务。


三、tmux 核心概念

在使用 tmux 之前,需要理解三个核心概念。

1 Session(会话)

Session 是 tmux 的顶层单位。

一个 session 可以包含多个窗口。

复制代码
session
 ├── window1
 ├── window2
 └── window3

2 Window(窗口)

Window 类似浏览器的 标签页

每个窗口可以运行不同任务。

例如:

复制代码
window1 → 运行程序
window2 → 查看日志
window3 → shell

3 Pane(面板)

Pane 就是 终端分屏

diff 复制代码
+-------------+
| pane1       |
+------+------+
| p2   | p3   |
+------+------+

四、tmux 安装

Ubuntu / Debian

sql 复制代码
sudo apt update
sudo apt install tmux

检查版本:

复制代码
tmux -V

CentOS / RHEL

复制代码
sudo yum install tmux

复制代码
sudo dnf install tmux

macOS

如果安装了 Homebrew:

复制代码
brew install tmux

Windows

Windows 推荐使用 WSL

复制代码
sudo apt install tmux

五、tmux 基本使用

1 启动 tmux

复制代码
tmux

创建指定 session:

arduino 复制代码
tmux new -s dev

2 查看 session

bash 复制代码
tmux ls

示例:

makefile 复制代码
dev: 1 windows

3 进入 session

arduino 复制代码
tmux attach -t dev

简写:

css 复制代码
tmux a -t dev

4 离开 tmux(不中断程序)

按:

css 复制代码
Ctrl + b

然后按:

复制代码
d

即:

css 复制代码
Ctrl + b → d

这叫 detach


5 关闭 session

在 tmux 中输入:

bash 复制代码
exit

或:

复制代码
Ctrl + d

六、tmux 常用快捷键

所有 tmux 操作都需要先按:

css 复制代码
Ctrl + b

这是 tmux 的 前缀键(Prefix Key)


窗口操作

操作 快捷键
新建窗口 Ctrl+b c
下一个窗口 Ctrl+b n
上一个窗口 Ctrl+b p
列出窗口 Ctrl+b w
关闭窗口 Ctrl+b &

分屏操作

操作 快捷键
垂直分屏 Ctrl+b %
水平分屏 Ctrl+b "
切换 pane Ctrl+b 方向键
关闭 pane Ctrl+b x

Session 操作

操作 命令
查看 session tmux ls
新建 session tmux new -s name
进入 session tmux attach -t name
删除 session tmux kill-session -t name

七、tmux 实战场景

场景1:服务器训练任务

vbscript 复制代码
ssh server
tmux new -s train
python train.py

离开:

css 复制代码
Ctrl+b d

重新连接:

arduino 复制代码
tmux attach -t train

场景2:开发环境

复制代码
window1 → 后端服务
window2 → 前端开发
window3 → 日志监控

场景3:日志监控

bash 复制代码
pane1 → tail -f log
pane2 → shell
pane3 → 服务运行

八、tmux 提升效率的小技巧

1 快速重命名窗口

css 复制代码
Ctrl+b ,

2 查看所有快捷键

css 复制代码
Ctrl+b ?

3 杀死 session

perl 复制代码
tmux kill-session -t session_name

九、总结

tmux 是 Linux 开发者的 效率神器

它可以:

  • 在一个终端运行多个任务
  • 支持窗口和分屏
  • 远程任务断线不中断
  • 非常适合服务器开发

如果你经常:

  • 使用 Linux
  • 远程开发
  • 跑训练任务
  • 运行脚本

那么 tmux 是一个必须掌握的工具。


如果你觉得这篇文章有帮助,欢迎点赞、收藏。

相关推荐
UIUV7 小时前
Splitter学习笔记(含RAG相关流程与代码实践)
后端·langchain·llm
cipher7 小时前
HAPI + 设备指纹认证:打造更安全的远程编程体验
前端·后端·ai编程
雨中飘荡的记忆7 小时前
保证金系统入门到实战
java·后端
郑鱼咚7 小时前
现在的AI热潮,恰恰证明了这个世界就是个草台班子
前端·人工智能·程序员
秋水无痕8 小时前
从零搭建个人博客系统:Spring Boot 多模块实践详解
前端·javascript·后端
用户9003486133468 小时前
GO语言基础:反射
后端
用户1474853079748 小时前
Git-stash产生的冲突
后端
UrbanJazzerati8 小时前
Python Scrapling反爬虫小技巧之Referer
后端·面试
程序员爱钓鱼8 小时前
Go语言WebP图像处理实战:golang.org/x/image/webp
后端·google·go