multitail命令使用
multitail命令使用
multitail:在一个终端里分屏看日志与命令(含 nvidia-smi + df -h )
multitail 可以理解为“增强版的 tail -f”:它不仅能同时追踪多个日志文件,还能把外部命令的输出当作一个窗口显示,并支持分屏布局、合并窗口、着色、过滤等功能。非常适合做一个“终端仪表盘”(Dashboard),比如左边看 GPU,右边看磁盘/内存/网络。
2. 基本概念:文件窗口 vs 命令窗口
- 文件窗口:追踪文件内容(类似
tail -f),适合系统日志、训练日志、服务日志。 - 命令窗口:显示某条命令的输出,适合
nvidia-smi、df -h、ss -s这类“状态快照”。
multitail 可以把两者混在一起做分屏监控。
4. 命令监控:把命令输出放进 multitail
4.1 直接显示命令输出
1
multitail -l "uptime" -L "free -h"
通常第一个命令用
-l,后续继续加命令用-L。
4.2 像 watch 一样“定时刷新”
命令本身只输出一次时,需要让 multitail 定时重跑(相当于 watch):
-R N:每 N 秒重跑一次命令-rc:每次重跑前清空该窗口(否则输出会一屏屏往下堆)
示例:每 2 秒刷新一次网络连接状态
1
multitail -R 2 -rc -l "ss -s"
6. 使用小技巧
6.1 退出
在任何窗口中按:
1
q
或直接 Ctrl+C。
6.2 适合谁用 multitail?
- 你经常需要同时盯多个信号源:训练日志 + GPU + 磁盘/网络/内存
- 你不想开一堆终端标签页,想在一个窗口里完成“观测”
- 你希望比
watch更强的“多面板”展示能力
6.3 什么时候用 tmux 更合适?
如果想要更自由的布局、会话保持(断线恢复)、跨主机长时间驻留,tmux + watch 也很强;而 multitail 更像“开箱即用的多窗口监控器”。
7. 一条推荐的“训练监控仪表盘”模板
把 GPU、磁盘、内存、网络都放进来:
1
2
3
4
5
multitail -s 2 \
-R 1 -rc -l "nvidia-smi" \
-R 5 -rc -L "df -h" \
-R 2 -rc -L "free -h" \
-R 2 -rc -L "ss -s"
可以按需要把 ss -s 换成 iostat -x 1 1 / nvidia-smi --query-gpu=... 等更细的指标命令。
本文由作者按照 CC BY 4.0 进行授权