【Linux/Ubuntu】VIM指令大全
Vim 是一款功能强大的文本编辑器,掌握其常用操作指令可以极大提高编辑效率。以下是分类整理的常用 Vim 操作指令:
一、进入与退出 Vim
vim 文件名
:打开或新建文件并进入 Vim:q
:退出(未修改文件):q!
:强制退出(不保存修改):w
:保存文件:wq
或:x
:保存并退出ZZ
:保存并退出(命令模式下)
二、模式切换
i
:在当前光标前插入I
:在当前行首插入a
:在当前光标后插入A
:在当前行尾插入o
:在当前行下方新建一行并插入O
:在当前行上方新建一行并插入s
:删除当前字符并插入S
:删除当前行并插入Esc
:从插入模式返回命令模式
三、光标移动(命令模式)
h
:左移一个字符j
:下移一行k
:上移一行l
:右移一个字符0
:移至行首$
:移至行尾^
:移至行首第一个非空白字符w
:移至下一个单词开头W
:移至下一个单词开头(忽略标点)e
:移至当前单词结尾E
:移至当前单词结尾(忽略标点)b
:移至前一个单词开头B
:移至前一个单词开头(忽略标点)gg
:移至文件开头G
:移至文件结尾nG
或:n
:移至第 n 行Ctrl + f
:向下翻一页Ctrl + b
:向上翻一页Ctrl + d
:向下翻半页Ctrl + u
:向上翻半页
四、删除操作(命令模式)
x
:删除当前字符X
:删除当前字符的前一个字符dd
:删除当前行ndd
:删除从当前行开始的 n 行d0
:删除从光标位置到行首的内容d$
:删除从光标位置到行尾的内容dw
:删除从光标位置到下一个单词开头的内容dW
:删除从光标位置到下一个单词开头的内容(忽略标点)de
:删除从光标位置到当前单词结尾的内容dB
:删除从光标位置到前一个单词开头的内容(忽略标点)dgg
:删除从当前行到文件开头的内容dG
:删除从当前行到文件结尾的内容
五、复制与粘贴(命令模式)
yy
:复制当前行nyy
:复制从当前行开始的 n 行p
:在当前行下方粘贴P
:在当前行上方粘贴yw
:复制从光标位置到下一个单词开头的内容y0
:复制从光标位置到行首的内容y$
:复制从光标位置到行尾的内容ygg
:复制从当前行到文件开头的内容yG
:复制从当前行到文件结尾的内容
六、撤销与重做(命令模式)
u
:撤销上一次操作Ctrl + r
:重做上一次被撤销的操作
七、查找与替换(命令模式)
/pattern
:从当前位置向下查找 pattern?pattern
:从当前位置向上查找 patternn
:继续查找下一个匹配项N
:继续查找上一个匹配项:nohl
:取消高亮显示查找结果:s/old/new
:替换当前行第一个 old 为 new:s/old/new/g
:替换当前行所有 old 为 new:%s/old/new
:替换所有行第一个 old 为 new:%s/old/new/g
:替换所有行所有 old 为 new:%s/old/new/gc
:替换所有行所有 old 为 new,每次替换前确认
八、其他常用操作
.
:重复上一次操作ZZ
:保存并退出:set nu
:显示行号:set nonu
:隐藏行号:set hlsearch
:开启搜索高亮:set nohlsearch
:关闭搜索高亮:set autoindent
:开启自动缩进:set paste
:进入粘贴模式(避免粘贴时格式错乱):set nopaste
:退出粘贴模式:w 新文件名
:另存为新文件:r 文件名
:将指定文件内容插入到当前位置v
:进入可视模式(按字符选择)V
:进入可视行模式(按行选择)Ctrl + v
:进入可视块模式(按块选择)
这些是 Vim 中最常用的操作指令,熟练掌握它们可以满足大部分文本编辑需求。随着使用深入,还可以探索更多高级功能和自定义配置。