如何使用vi/vim

vi/vim 文件路径

例如

vi /usr/local/test.txt

这样就进入了vim的命令模式

vim的3种模式

  1. 命令模式(Command Mode)
  2. 插入模式(Insert Mode)
  3. 末行模式(Command-Line Mode)

命令模式

用户刚刚启动 vi/vim,便进入了命令模式

常用命令

  • i – 切换到输入模式,在光标当前位置开始输入文本。
  • x – 删除当前光标所在处的字符。
  • D – 删除光标所在位置到行尾之间所有的字符
  • : – 切换到底线命令模式,以在最底一行输入命令。
  • a – 进入插入模式,在光标下一个位置开始输入文本。
  • o:在当前行的下方插入一个新行,并进入插入模式。
  • O – 在当前行的上方插入一个新行,并进入插入模式。
  • dd – 删除当前行。
  • yy – 复制当前行。
  • p(小写) – 粘贴剪贴板内容到光标下方。
  • P(大写)– 粘贴剪贴板内容到光标上方。
  • u – 撤销上一次操作。
  • Ctrl + r – 重做上一次撤销的操作。
  • :w – 保存文件。
  • :q – 退出 Vim 编辑器。
  • :q! – 强制退出Vim 编辑器,不保存修改。

插入模式

在命令模式下按下 i 就进入了输入模式,使用 Esc 键可以返回到普通模式

  • 字符按键以及Shift组合,输入字符
  • ENTER,回车键,换行
  • BACK SPACE,退格键,删除光标前一个字符
  • DEL,删除键,删除光标后一个字符
  • 方向键,在文本中移动光标
  • HOME/END,移动光标到行首/行尾
  • Page Up/Page Down,上/下翻页
  • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
  • ESC,退出输入模式,切换到命令模式

撤销和重做

  • u – 撤销一次操作
  • ctrl+R – 重做被撤销的操作

搜索和替换

  • :/string – 向前(朝向文件尾)搜索字符串string
  • :?string – 向后(朝向文件头)搜索字符串string
  • :s/pattern/string – 将pattern所代表的字符串替换为string

光标的移动

  • ^ – 移动光标到行首
  • $ – 移动光标到行尾
  • G – 移动光标到文件尾
  • Gg – 移动光标到文件头
  • W – 移动光标到下一个单词
  • B – 移动光标到前一个单词
  • Ctrl+f – 向前(朝向文件尾)翻动一页
  • Ctrl+b – 向后(朝向文件头)翻动一页

末行模式

在命令模式下按下 :(英文冒号)就进入了底线命令模式

  • :w – 保存文件。
  • :q – 退出 Vim 编辑器。
  • :wq – 保存文件并退出 Vim 编辑器。
  • :q! – 强制退出Vim编辑器,不保存修改。
  • :w filename – 另存为filename

推荐配置

语法高亮

:syntax on

自动缩进

:set autoindent