终端快捷键速查

Terminal · Tmux · Less · Vim Cheatsheet

高效开发者快捷键速查表

告别死记硬背 · 一键搜索 · 随时查阅

⌨️

Terminal (Bash/Zsh/macOS)

光标移动 Cursor

Ctrl + A
跳到行首
Ctrl + E
跳到行尾
Ctrl + F
向前移动一个字符
Ctrl + B
向后移动一个字符
Option +
向前移动一个单词 (Mac)
Option +
向后移动一个单词 (Mac)
Ctrl + XX
在当前位置和行首之间切换

删除/剪切 Delete

Ctrl + U
清空整行 (光标前全部)
Ctrl + K
删除到行尾
Ctrl + W
删除前一个单词
Ctrl + D
删除光标处字符 / 退出 shell
Ctrl + H
删除前一个字符 (= Backspace)
Ctrl + Y
粘贴最后一次删除的内容

历史命令 History

Ctrl + R
反向搜索历史命令 ⭐
Ctrl + P
上一条命令 (= ↑)
Ctrl + N
下一条命令 (= ↓)
Ctrl + G
退出历史搜索
!!
执行上一条命令
!$
上一条命令的最后一个参数
!abc
执行最近以 abc 开头的命令

进程控制 Process

Ctrl + C
中断当前命令 (SIGINT)
Ctrl + Z
挂起当前进程到后台
Ctrl + L
清屏 (= clear)
Ctrl + S
暂停屏幕输出
Ctrl + Q
恢复屏幕输出
fg / bg
前台/后台恢复

macOS 特有

Cmd + T
新建标签页
Cmd + N
新建窗口
Cmd + W
关闭标签页
Cmd + K
清屏 (彻底清空缓冲)
Cmd + ←/→
切换标签页
Cmd + D
垂直分屏 (iTerm2)
Cmd + Shift + D
水平分屏 (iTerm2)
🪟

Tmux

💡 提示:默认前缀键 Prefix = Ctrl + B (按下后松开,再按下一个键)

会话 Session

tmux new -s name
新建命名会话
tmux ls
列出所有会话
tmux a -t name
附加到会话
tmux kill-session -t name
杀掉会话
Prefix + d
脱离当前会话 (detach)
Prefix + s
选择会话列表
Prefix + $
重命名当前会话

窗口 Window

Prefix + c
新建窗口
Prefix + ,
重命名窗口
Prefix + n
下一个窗口
Prefix + p
上一个窗口
Prefix + 0-9
切换到指定编号窗口
Prefix + w
窗口列表
Prefix + &
关闭窗口
Prefix + f
搜索窗口

面板 Pane

Prefix + %
垂直分屏 (左右)
Prefix + "
水平分屏 (上下)
Prefix + 方向键
切换面板
Prefix + o
顺序切换面板
Prefix + q
显示面板编号
Prefix + x
关闭面板
Prefix + z
面板最大化/还原 ⭐
Prefix + {
面板前移
Prefix + }
面板后移
Prefix + space
切换面板布局
Prefix + Ctrl+方向
调整面板大小

复制模式 Copy Mode

Prefix + [
进入复制模式 (可滚屏)
Space
开始选择
Enter
复制选中
Prefix + ]
粘贴
q
退出复制模式
/ ?
向下/向上搜索

其他 Misc

Prefix + ?
显示所有快捷键
Prefix + t
显示大时钟
Prefix + :
进入命令模式
Prefix + r
重新加载配置 (需绑定)
📄

Pagers & 文件查看 (less / more / cat ...)

💡 提示:提示:less 功能最强(可前后翻 / 搜索 / 跳行),more 只能向前,cat 直接全量输出。man / git log 默认调用 less。

启动命令 Commands

less file
分页查看文件 (推荐)
less +F file
类似 tail -f 实时跟随
less -N file
显示行号
less -S file
长行不换行 (横向滚动)
less -i file
搜索忽略大小写
more file
简单向前分页
cat file
输出整个文件
cat -n file
带行号输出
cat -A file
显示所有不可见字符
tac file
倒序输出 (尾到头)
head -n 20 file
前 20 行
tail -n 20 file
末 20 行
tail -f file
实时追踪 ⭐
tail -F file
追踪并自动重开 (轮转日志)

less 移动 Move

Space / f
下翻一屏
b
上翻一屏
d
下翻半屏
u
上翻半屏
Enter / j
下移一行
k
上移一行
g
跳到文件开头
G
跳到文件末尾
10g
跳到第 10 行
50p
跳到 50% 位置
/
横向滚动 (配合 -S)

less 搜索 Search

/pattern
向下搜索
?pattern
向上搜索
n
下一个匹配
N
上一个匹配
&pattern
只显示匹配行 (grep 模式) ⭐
& (空)
取消过滤
ESC u
清除高亮

less 文件 / 退出

:n
下一个文件 (多文件打开时)
:p
上一个文件
:e file
打开新文件
v
用 $EDITOR (vim) 打开当前文件 ⭐
F
进入跟随模式 (Ctrl+C 退出)
m
标记当前位置
'
跳回标记位置
= Ctrl+G
显示当前位置/文件信息
h
帮助
q ZZ
退出

more 快捷键

Space
下翻一屏
Enter
下移一行
b
上翻一屏 (有限支持)
/pattern
搜索
n
下一个匹配
=
显示当前行号
v
用 vi 打开
q
退出

组合用法 Pipes

cat file | less
用 less 看 cat 输出
ps aux | less
分页看进程
dmesg | less +G
看内核日志并跳到末尾
git log | less
git log 默认就是 less
grep -n err log | less
搜索后再分页
less file1 file2
同时打开多个文件
zless file.gz
直接看 gzip 文件
bat file
彩色高亮的 cat (需安装)
✏️

Vim

模式 Modes

i
光标前插入
a
光标后插入
I
行首插入
A
行尾插入
o
下方新行插入
O
上方新行插入
Esc / Ctrl+[
回到普通模式
v
字符可视模式
V
行可视模式
Ctrl + v
块可视模式

移动 Movement

h j k l
左 下 上 右
w / b
下一个/上一个单词首
e
单词尾
0
行首
^
第一个非空字符
$
行尾
gg
文件首
G
文件尾
nG :n
跳到第 n 行
Ctrl + d / u
下/上翻半页
Ctrl + f / b
下/上翻整页
%
匹配括号
* / #
查找光标所在词

编辑 Edit

x
删除字符
dd
删除整行 (剪切)
dw
删除一个单词
d$ D
删除到行尾
yy
复制整行
yw
复制一个单词
p / P
粘贴在后/前
u
撤销
Ctrl + r
重做
.
重复上一个操作 ⭐
r
替换单个字符
cc
改写整行
cw
改写单词
>> / <<
缩进/反缩进

查找替换 Search

/pattern
向下查找
?pattern
向上查找
n / N
下一个/上一个匹配
:%s/old/new/g
全局替换
:%s/old/new/gc
全局替换 (逐个确认)
:noh
清除高亮

文件 / 退出

:w
保存
:q
退出
:wq ZZ
保存并退出
:q!
强制退出不保存
:e file
打开文件
:sp / :vsp
水平/垂直分屏
Ctrl + w w
切换窗口
Ctrl + w q
关闭窗口