# 编辑操作

# 移动光标

image-20200228142848237

# 屏幕向前滚动一页

  • ctrl + b

# 屏幕向后滚动一页

  • ctrl + f

# 屏幕向前滚动半页

  • ctrl + d

# 屏幕向后移动半页

  • ctrl + u

# 向右移动 n 个字符

  • n 空格(如何改行字符数小于n,则光标继续从下行开始向右移动,一直到n)

# 移动到当前行 行首

  • 0
  • shift + 6 ^

# 移动到当前行 行尾

  • shift + 4 $

# 移动光标到当前屏幕的最顶行

  • H

# 移动光标到当前屏幕中间那一行

  • M

# 移动光标到当前屏幕的最底行

  • L

# 移动光标到文本的最后一行

  • G

# 移动到当前文本的第 n 行

  • nG

# 移动到文本的首行

  • gg

# 光标向下移动 n 行

  • n 回车

# w , b 向后或向前移动一个单词

# ctrl + f , ctrl + b 前后翻页

# 查找内容

  • /word 向光标后寻找字符串 word
  • ?word 向光标前寻找字符串 word

# 在 n1 行到 n2 行间查找字符,并替换字符

  • n1, n2s/word1/word2/g 在 n1 和 n2 行间查找 word1 并替换为 word2

# 删除字符

  • x 向后删除字符

  • X 向前删除字符

  • nx 向后删除 n 个字符

# 删除行

  • dd 删除当前行
  • ndd 删除光标所在 n 行
  • d1G 删除光标所在行到第一行的所有数据
  • dG 删除光标所在行到行末的所有数据

# 复制数据

  • yy 复制光标所在行
  • nyy 复制从光标所在行起向下 n 行
  • y1G 复制光标所在行到第一行的所有数据
  • yG 复制光标所在行到末行的所有数据

# 粘贴

  • p 从光标下一行粘贴
  • P 从光标上一行粘贴

# 将光标所在行与下一行的数据结合成一行

  • j

# 撤销

  • u

# 编辑模式

  • i 在当前字符串插入字符
  • I 在当前行行首插入字符
  • a 在当前字符后插入字符
  • A 在当前行行末插入字符
  • o 在当前行下插入新的字符
  • O 在当前行上插入新的字符
  • r 替换光标所在位置的字符,只替换一次
  • R 一直替换光标所在字符,一直到 按下 ESC

# 保存文件

  • :w 将编辑过的文本保存
  • :w! 若文本只读时,强制保存
  • :q 退出 vim
  • :q! 不管编辑或未编辑都不保存退出
  • :wq 保存,退出
  • :e! 将文档还原为原始状态
  • ZZ 保存 退出
  • :w [filename] 保存后的文件另存为 filename

# 显示行号

  • set nu 在每行的行首显示行号
  • set nonu 取消行号

# 执行其他文件

  • :! command 暂时离开 vim 运行某个命令
最后编辑时间: 4/10/2020, 5:51:20 PM