iTerm2
https://www.zhihu.com/question/27447370
https://medium.com/ayuth/iterm2-zsh-oh-my-zsh-the-most-power-full-of-terminal-on-macos-bdb2823fb04c
https://jeremysu0131.github.io/Tool-Mac-iTerm-2-Oh-My-Zsh-Powerlevel9k-設定/
智能选中
双击选中、三击选中整行、四击智能选中(智能规则可配置),选中即复制
巧用 ⌘ 键
按住 ⌘ 键
- 可以拖拽选中的字符串;
- 点击 url:调用默认浏览器访问该网址;
- 点击文件:调用默认程序打开文件;
- 如果文件名是
filename:42
,且默认文本编辑器是Macvim
、Textmate
或BBEdit
,将会直接打开到这一行; - 点击文件夹:在
finder
中打开该文件夹; - 同时按住
⌥
键,可以以矩形选中,类似于 vim 中的⌃ v
操作。
快捷键
标签
新建标签:⌘ + t
关闭标签:⌘ + w
切换标签:⌘ + 数字
⌘ + 左右方向键
切换全屏:⌘ + enter
查找:⌘ + f
分屏
垂直分屏:⌘ + d
水平分屏:⌘ + ⇧ + d
切换屏幕:⌘ + ⌥ + 方向键
⌘ + [
或 ⌘ + ]
查看历史命令:⌘ + ;
查看剪贴板历史:⌘ + ⇧ + h
其他
清除当前行:⌃ + u
到行首:⌃ + a
到行尾:⌃ + e
前进后退:⌃ + f/b
(相当于左右方向键)
上一条命令:⌃ + p
搜索命令历史:⌃ + r
删除当前光标的字符:⌃ + d
删除光标之前的字符:⌃ + h
删除光标之前的单词:⌃ + w
删除到文本末尾:⌃ + k
交换光标处文本:⌃ + t
清屏 1:⌘ + r
清屏 2:⌃ + l
时间线:⌘ + ⇧ + e
自带有哪些很实用的功能/快捷键
⌘ + 数字
在各 tab 标签直接来回切换
选择即复制 + 鼠标中键粘贴,这个很实用
⌘ + f
所查找的内容会被自动复制
⌘ + d
横着分屏 /⌘ + ⇧ + d
竖着分屏
⌘ + r
= clear
,而且只是换到新一屏,不会想 clear
一样创建一个空屏
⌃ + u
清空当前行,无论光标在什么位置
输入开头命令后 按 ⌘ + ;
会自动列出输入过的命令
⌘ + ⇧ + h
会列出剪切板历史
可以在 Preferences > keys 设置全局快捷键调出 iterm,这个也可以用过 Alfred 实现
常用的一些快捷键
⌘ + 1 / 2
左右 tab 之间来回切换,这个在 前面 已经介绍过了
1 | ⌘←` / `⌘→` 到一行命令最左边/最右边 ,这个功能同 `C+a` / `C+e |
⌥←
/ ⌥→
按单词前移/后移,相当与 C+f
/ C+b
,其实这个功能在 Iterm 中已经预定义好了,⌥f
/ ⌥b
,看个人习惯了
好像就这几个
设置方法如下
当然除了这些可以自定义的也不能忘了 linux 下那些好用的组合
C+a
/ C+e
这个几乎在哪都可以使用
C+p
/ !!
上一条命令
C+k
从光标处删至命令行尾 (本来 C+u
是删至命令行首,但 iterm 中是删掉整行)
C+w
A+d
从光标处删至字首/尾
C+h
C+d
删掉光标前后的自负
C+y
粘贴至光标后
C+r
搜索命令历史,这个较常用
标记跳转
类似编辑器的 mark 工具,iTerm2 也可以在命令行位置设置标记
设置标记:⌘ + ⇧ + m
跳转到上个标记:⌘ + ⇧ + j
多个标记切换:⌘ + ⇧ + 方向键
选中即复制
iterm2 有 2 种好用的选中即复制模式。
一种是用鼠标,在 iterm2 中,选中某个路径或者某个词汇,那么,iterm2 就自 动复制了。
另一种是无鼠标模式,⌘+f,弹出 iterm2 的查找模式,输入要查找并复制的内容的前几个字母,确认找到的是自己的内容之后,输入 tab,查找窗口将自动变化内容,并将其复制。如果输入的是 ⇧+tab,则自动将查找内容的左边选中并复制。
自动完成
输入打头几个字母,然后输入 ⌘+;
iterm2 将自动列出之前输入过的类似命令。
剪切历史
输入 ⌘+⇧+h
,iterm2 将自动列出剪切板的历史记录。如果需要将剪切板的历史记录保存到磁盘,在 Preferences > General > Save copy/paste history to disk 中设置。
及时回放
某个交互命令会覆写屏幕上的输入,之前的历史信息可能会被覆盖掉,无法查看,iterm2 这个及时回放功能,会记录历史输入,输出,有点类似视频录制。
进入回放:⌘ + opt + b
方向键控制时间 :arrow
退出回放:esc
oh-my-zsh
智能补全
cd ~/ 切换目录,敲击两下tab
,会列出当前目录下的所有目录,并且可以使用键盘上下左右键来选择要进入的目录。
命令选项补齐,比如输入 docker,然后按 tab,即可显示出 docker 都有哪些命令选项。
智能切换目录
进入一个很深的目录,例如 /var/log/nginx/error/lastyear/may/first/monday
, 用 zsh 可以这样输入 cd /v/l/n/e/l/m/f/m
然后按 tab 即可补全整个路径。或者你实现知道当前目录名称,可以直接输入目录,即可进去目录。
在 zsh 下可以记录最近进过的 10 个目录,只需要输入d
,然后就可以看到对应的 0-9 的目录,输入cd -数字
即可进入对应的目录。
或者直接输入 cd -
然后 tab
,会列出最近使用过的 31 个目录。
配置
需要的时候把 iterm2 呼出来,不需要的时候自动隐藏
iTerm2 > Preferences > Keys
,左侧 Hotkey
选项 勾选 Show/hide iTerm2 with a system-wide hotkey
,设置快捷键
复用上个会话的目录
1 | iTerm2 > Preferences > Profiles > Working Directory > Reuse previous session’s directory |
别名
1 | alias zsh-config='vim ~/.zshrc' |
终端下命令行下用 Sublime、vscode、atom 打开文件夹或目录
vscode 命令行调用
VS Code 提供了一个 code
命令,用来在 shell 环境下调用编辑器。使用快捷键 ⇧⌘P
(或 F1) 唤起命令面板,输入以下命令即可完成安装。
code 命令后可接多个路径或文件:
1
code pro6.js pro6.scss ../
文件对比:
1
code -d new-file.js old-file.js
打开文件并跳至指定行:
1
code -g source/cn/static/global/tracker.js:15
更多 code 命令行使用方法,参见《Additional Command line arguments》。
手动添加
1) 添加启动命令
1 | sudo nano .zshrc 在文件末尾加上别名: alias atom='/Applications/Atom.app/Contents/MacOS/Atom'alias subl='/Applications/SublimeText.app/Contents/SharedSupport/bin/subl'alias code='/Applications/Visual\ Studio\ Code.app/Contents/Resources/app/bin/code' `⌘ + X` 再输入 `y` 保存,重启 iterm2。 |
查找 APP 路径:
vim配色
终端输入vim ~/.vimrc
,设置内容如下,
1 | syntax on |
powerlevel9k主题
配置项
其他人的配置
我的配置
1 | export DEFAULT_USER="Leo" |
如果图标显示不出来可以进入 iTerm 的设置 > Profiles > Text > Change Font > 选择 Hack Nerd Font
字体 Regular 大小 18pt,完成后重新启动 iTerm ,设置完成。
插件
打开配置文件:
~/.zshrc
autojump:快速切换目录
zsh-syntax-highlighting:zsh 可用命令高亮
1
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
zsh-autosuggestions:命令自动提示
1
git clone https://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions
1 | plugins=(brew git node npm osx autojump zsh-autosuggestions zsh-syntax-highlighting) |