為什么你還在用 screen?tmux 才是新一代終端神器!
今天分享一個比screen更好用的終端命令工具:tmux。
如果你有實際的生產工作經驗,就會遇到登上去tail看日志,一會就給你自動閃退;還有就是腳本跑一半,SSH斷了,類似的情況還有很多。
我之前發了一個文章是用TMOUT=0來使會話不中斷。還有兩個命令工具也可以做到,并且有更豐富功能:screen和tmux
1. screen:老牌工具
screen 是老一代的終端復用工具。screen 功能上能滿足基本需求:
- 會話保持
- 支持分屏
- 可后臺運行任務
有以下缺點:
- Ctrl-a 是默認前綴,和 bash 常用操作沖突(比如 Ctrl-a 到行首)
- 分屏配置繁瑣,不支持鼠標,不支持真顏色;
- 多窗口切換迷路,窗口編號一不留神就錯了。
screen常用命令:
# 有些發行版需要手動安裝一下
yum install -y screen
# 創建一個新會話,-S指定會話名字
screen -S mysession
# 分離當前會話
Ctrl-a d
# 恢復指定會話
screen -r mysession
# 查看會話列表
screen -ls
# 殺掉會話
screen -X -S mysession quit
如果你只是想會話保持的話,用screen就夠。
2. tmux:現代終端之光
相比 screen,tmux 是為現代終端體驗量身打造的復用器。
(1) 優勢(對比screen)
核心優勢:
特性 | tmux | screen |
會話管理 | 優雅 | 支持 |
多窗口多面板 | 橫豎隨意,命名清晰 | 有但難用 |
插件支持 | 豐富插件生態,支持 TPM | 無插件機制 |
鼠標支持 | 拖動/滾動/復制全支持 | 非常有限 |
狀態欄美化 | 可自定義時間、負載、Git 分支等 | 原始 |
(2) 常用操作
# 安裝
sudo apt install tmux # Debian/Ubuntu系列
yum install tmux # redhat系列
# 啟動
tmux
# 退出但不關閉會話
Ctrl-b d
# 查看所有會話
tmux ls
# 重新連接會話
tmux attach-session -t 0
記住一個核心操作鍵:Ctrl-b,接下來的命令都在這之后觸發。
功能 | 快捷鍵 |
創建窗口 |
|
切換窗口 |
/ |
分屏(橫) |
|
分屏(豎) |
|
切換面板 |
|
調整面板大小 |
+ 方向鍵 |
重命名窗口 |
|
具體的操作截圖我就不一一截出來了,你需要自己體驗一下才知道如何使用。在有圖形化界面的系統操作體驗感更好。