vim文本编辑器

77 阅读2分钟

vi编辑器

  • 文件已存在——是查看、修改、编辑
  • 文件不存在——是保存后,建立新文件

为什么用vi

  1. 基本所有的linux在装系统时候已经安装了vi
  2. 功能强大

vim 是vi 的升级版

!vim 打开上一次打开的vim

三种模式

  1. 命令模式:默认模式,可以实现移动光标,剪切/粘贴文本
  2. 插入模式:用于修改文本
  3. 末行模式:保存,退出等搜索替代

三种模式的切换

image.png

命令模式

光标移动

  • 上下左右四个箭头:方向移动
  • ctrl+f或者Pagedown:向下翻页
  • ctrl+b或者Pageup :向上翻页
  • G:跳转到文件的最后一行
  • #G:跳转到#所在行
  • gg:跳转到第一行
  • 0:跳到真正的行首
  • ^:非空白字符的行首
  • end或者$:跳到行位
  • e :跳到本单词的词尾
  • #e:跳到第#个单词的词尾

复制、粘贴、删除

  • yy:复制
  • yw:复制一个单词
  • #yy:复制#行
  • 小p:向下粘贴
  • 大P:向上粘贴
  • dd:删除一整行
  • #dd:删除#行
  • dw:删除一个单词
  • X:删除单个字符

修改、撤销、保存

  • 小r:按一次 修改一次
  • 大R:按一次 一直修改
  • 小u:撤销一次删除
  • 大U:撤销这一行的删除
  • ~ :切换单词的大小写
  • 大J:两行合并成一行
  • 大ZZ:保存并退出
  • 大ZQ:不保存退出

插入模式

命令模式进入插入模式的方式

  • a: 在当前光标位置之后插入内容
  • i: 在当前光标位置之前插入内容
  • A: 在光标所在行的末尾(行尾)插入内容
  • I: 在光标所在行的开头(行首)插入内容
  • 小o:在光标所在行的下面插入一个新行
  • 大O: 在光标所在行的上面插入一个新行

末行模式

  • :wq—— 保存并退出
  • :!加命令——在文件里执行命令
  • :set cul——光标所在行有下划线
  • :set nocul ——取消下划线
  • :nlhl——取消高亮
  • :set ai——自动对齐
  • :set noai ——取消对齐
  • :q——退出不保存
  • :q!——强制退出不保存

查找替换

: 范围 s/查找的文件内的关键字/替换的关键字/修饰符(g全局)

例子:

:s/2/3/g

把所有的2换成3,不加g只换第一个2

范围

  • 不写默认当前光标所在行
  • m,n m行到n行
  • % 全文

查找的文件内的关键字 可以用正则表达式

替换的关键字 一定要确定