Linux中vi编辑器的使用教程

在Linux下,可以键入vimtutor命令,有一个包含实操的vim教程。

VI的三种命令模式

  • Command(命令)模式,用于输入命令;
  • Insert(插入)模式,用于插入文本;
  • Visual(可视)模式,用于视化的的高亮并选定正文;

文件的保存和退出

  • w 保存;
  • w filename 另存为filename;
  • wq! 保存退出;
  • wq! filename 注:以filename为文件名保存后退出;
  • q! 不保存退出;
  • x 应该是保存并退出 ,功能和:wq!相同

光标移动

  • j 向下移动一行;
  • k 向上移动一行;
  • h 向左移动一个字符;
  • l 向右移动一个字符;
  • ctrl+b 向上移动一屏;
  • ctrl+f 向下移动一屏;
  • 向上箭头 向上移动;
  • 向下箭头 向下移动;
  • 向左箭头 向左移动;
  • 向右箭头 向右移动;
  • $ 移至行尾
  • gg 移动至文档开始
  • GG 移动到文档尾部
  • ctrl + f 向前翻页
  • ctrl + b 向后翻页

插入模式

  • i 在光标之前插入;
  • a 在光标之后插入;
  • I 在光标所在行的行首插入;
  • A 在光标所在行的行末插O 在光标所在的行的上面插入一行;
  • o 在光标所在的行的下面插入一行;
  • s 删除光标后的一个字符,然后进入插入模式;
  • S 删除光标所在的行,然后进入插入模式;

文本内容的删除

  • x 一个字符;
  • #x 删除几个字符,#表示数字,比如3x;
  • dw 删除一个单词;
  • #dw 删除几个单词,#用数字表示,比如3dw表示删除三个单词;
  • dd 删除一行;
  • #dd 删除多个行,#代表数字,比如3dd 表示删除光标行及光标的下两行;
  • d$ 删除光标到行尾的内容;
  • J 清除光标所处的行与上一行之间的空格,把光标行和上一行接在一起;

恢复修改及恢复删除

  • u 撤消修改或删除操作;

复制及粘帖

  • yy 复制当前行
  • #yy 复制多行,#用数字表示,比如3yy表示复制三行;
  • 如果在可视模式下,y可以复制选定的内容
  • p在光标之后粘帖
  • shift + p 在光标之前粘帖

查找和替换

  • /SEARCH 注:正向查找,按n键把光标移动到下一个符合条件的地方;
  • ?SEARCH 注:反向查找,按shift+n 键,把光标移动到下一个符合条件的
  • :s /SEARCH/REPLACE/g 注:把当前光标所处的行中的SEARCH单词,替换成REPLACE,并把所有SEARCH高亮显示;
  • :%s /SEARCH/REPLACE 注:把文档中所有SEARCH替换成REPLACE;
  • :#,# s /SEARCH/REPLACE/g 注:#号表示数字,表示从多少行到多少行,把SEARCH替换成REPLACE;

参考链接

https://www.cnblogs.com/zhang-ke/p/5645420.html