iterm2有什么酷功能?
18 个回答
我写了一篇文章,你应该知道的 iTerm2 使用方法--MAC终端工具。贴在下面。
iTerm2 是 MAC 下最好的终端工具。可以简单的认为,iTerm2 是配置完毕开箱即用的 tmux。但 tmux 有以下一些缺点:
- 查找 terminal 的输出历史内容需要切换到 vim 模式。在该模式下复制使用的是 vim 的查找,增加了认知负担;
- 和各种工具兼容性比较差,尤其是 vim 和 emacs 的 powerline;
- 自有样式,与系统的样式冲突。
iTerm2 的一些特色功能如下:
标签变色
iTerm2 的标签的颜色会变化,以指示该 tab 当前的状态。当该标签有新输出的时候,标签会变成洋红色;新的输出长时间没有查看,标签会变成红色。可在设置中关掉该功能。
智能选中
在 iTerm2 中,双击选中,三击选中整行,四击智能选中(智能规则可配置),可以识别网址,引号引起的字符串,邮箱地址等。(很多时候双击的选中就已经很智能了)
在 iTerm2 中,选中即复制。即任何选中状态的字符串都被放到了系统剪切板中。
巧用 Command 键
按住⌘键:
- 可以拖拽选中的字符串;
- 点击 url:调用默认浏览器访问该网址;
- 点击文件:调用默认程序打开文件;
- 如果文件名是filename:42,且默认文本编辑器是 Macvim、Textmate或BBEdit,将会直接打开到这一行;
- 点击文件夹:在 finder 中打开该文件夹;
- 同时按住option键,可以以矩形选中,类似于vim中的ctrl v操作。
Meta 键
在emacs中,meta键的使用非常频繁,而 OSX 系统没有提供meta键。在 iTerm2 中可以选择左右两个的Option键作为meta键。官方推荐的配置如下图所示。右Option键依然是 OSX 的默认功能(输入特殊字符)。
Q: How do I make the option/alt key act like Meta or send escape codes?
A: Go to Preferences->Profiles tab. Select your profile on the left, and then open the Keyboard tab. At the bottom is a set of buttons that lets you select the behavior of the Option key. For most users, Esc+ will be the best choice.
常用快捷键
- 切换 tab:⌘+←, ⌘+→, ⌘+{, ⌘+}。⌘+数字直接定位到该 tab;
- 新建 tab:⌘+t;
- 顺序切换 pane:⌘+[, ⌘+];
- 按方向切换 pane:⌘+Option+方向键;
- 切分屏幕:⌘+d 水平切分,⌘+Shift+d 垂直切分;
- 智能查找,支持正则查找:⌘+f。
自动完成
iTerm2 可以自动补齐命令,输入若干字符,按⌘+;弹出自动补齐窗口,列出曾经使用过的命令。
iTerm2 也可以使用历史记录,按⌘+Shift+h弹出历史记录窗口。
Exposé Tabs
⌘+Option+e全屏展示所有的 tab,可以搜索。
高亮当前鼠标的位置
一个标签页中开的窗口太多,有时候会找不到当前的鼠标,⌘+/找到它。
iTerm2 最好用的是分屏CMD+D/CMD+Shift+D
而iTerm2最大的黑科技却是与tmux集成,全球仅此一家。
其实iTerm2的设计初衷就是做成Native窗口及标签的tmux。
与iTerm2集成的change已经merge到tmux主线中了,只要tmux的版本足够新都支持,我的是2.0。
使用也很简单,本地使用或者ssh远程使用均可
新建并关联tmux
#tmux -CC
attach并关联
#tmux -CC attach
这样原来的shell会变成控制tmux的状态。
同时iTerm2会新建一个窗口与tmux的服务器端一一对应
tmux的session映射iterm2窗口
tmux的tab映射iterm2的tab
tmux的panel映射iTerm2的panel
忘掉tmux那用不惯的快捷键和蛋疼的复制粘贴吧
使用tmux就像用本地shell一样,而且无痛断开和重连,神器有木有。
连接后会有条小鱼箭头以作区分这是tmux关联的标签