iTerm2 历史不丢失:scrollback 与 zsh history 双层配置
· 6 min read
iTerm2 历史丢失是两套独立机制,默认都是真丢弃。
- scrollback 输出:默认 ~2000 行,
clear/CLI 会发 CSI-3J 主动清空 - zsh history:HISTSIZE/SAVEHIST 默认 500/1000,只 exit 时写盘
- tmux 独立 history-limit,外层 iTerm scrollback 直接失效
- 已丢内容就是真丢,macOS 不留终端文本
- 长期任务用
script录屏,iTerm 崩溃也能找回 - 关闭 Tab 自动存盘:Save scrollback to file when window is closed,默认目录
~/Library/Application Support/iTerm2/Scrollback/
一、先分清两个东西
把 "iTerm2 历史" 当成一个东西,是踩坑的起点。它其实是 两个完全独立 的机制:
- scrollback 输出日志:
npm run dev打印出来的内容、报错堆栈、build 日志。在终端窗口里按滚轮往上翻看到的就是它。配置方:iTerm2。 - zsh history 命令列表:
history命令查到的"你敲过的命令",存到~/.zsh_history。配置方:zsh。
两个机制跑在不同进程、由不同配置文件控制。下面分开讲。