iTerm2:强大的 macOS 终端模拟器
iTerm2 是 macOS 上强大的终端模拟器,它为终端带来了现代化的体验,拥有许多你一直想要却不知道的功能。
主要特性
原生 tmux 集成
iTerm2 的窗口/标签页可以直接替代 tmux 的文本界面。运行 tmux -CC 后,tmux 的窗口会变成真正的 macOS 窗口。会话能在崩溃、SSH 断开甚至软件升级后依然保持。支持多人同时连接同一会话进行协作。
Shell 深度集成
能感知当前命令、目录、主机名和用户名。支持点击通过 SCP 下载文件、拖拽上传、按主机记录命令历史、按“frecency”排序的最近目录,以及在每个提示符处打标记等功能。
内置 AI 聊天
集成 LLM 聊天窗口,可选择与终端内容进行交互。关联会话后能获得上下文感知的帮助、代你执行命令,或为输出添加注释解释。
终端内显示图片
可直接在终端中显示图片(包括动态 GIF)。使用 imgcat 就能查看照片、图表或可视化输出,无需离开终端工作流。
自动配置切换
根据主机名、用户名、当前目录或正在运行的命令自动切换终端外观。例如 SSH 到生产环境时,背景自动变成红色,不同环境拥有不同的视觉区分。
全局热键窗口
通过系统全局热键唤出终端窗口,可从屏幕顶部(或任意边缘)滑入,即使在全屏应用中也能使用。支持固定显示或自动隐藏。
会话持久化
会话运行在长期存活的服务器进程中。即使 iTerm2 崩溃或升级,你的 Shell 仍在后台继续运行。重启 iTerm2 后会自动重新连接,并恢复到你离开时的状态。
内置网页浏览器
浏览器会话可融入 iTerm2 的窗口/标签页/分屏层级。复制模式、触发器、AI 聊天等终端功能在浏览器会话中同样可用。
可自定义状态栏
每个会话可显示 Git 分支、CPU/内存图表、当前目录、主机名、自定义字符串或通过 Python API 实现的组件。
触发器(Triggers)
通过正则表达式匹配内容后自动执行动作:高亮文本、运行命令、发送通知、打开密码管理器、打标记或调用 Python 脚本等。
智能选择
四击可选中语义对象(URL、文件路径、邮箱地址、引号内容等)。右键提供上下文操作,Cmd+点击即可打开。
复制模式
类 Vim 的键盘选择模式,无需鼠标即可浏览和选择文本。配合标记功能可在各个命令提示符间快速跳转。
即时回放(Instant Replay)
可以向后回放终端历史,查看任意时刻屏幕上的精确内容并带时间戳。非常适合捕捉稍纵即逝的错误信息。
Python 脚本 API
通过 Python 实现完整自动化和深度定制。可创建自定义状态栏组件、触发器、菜单项,甚至开发全新功能。
快速打开(Open Quickly)
使用 Cmd+Shift+O 可按标签标题、命令、主机名、目录或徽章搜索所有会话,快速在大规模会话集合中导航。
https://github.com/gnachman/iTerm2
https://iterm2.com/