vi (vim) 常用命令 简单

最近在做linux相关学习,记录vi常用命令如下:

1. 光标移动

  * w 光标移动到下一个文字的开始

  * b 光标移动到上一个文字的开始

  * e 光标移动到下一个文字的结束

  * n + <space> 光标移动n个字符

  * 0/ Home 光标移动到行首($/End 光标移动到行尾)

  * H / M / L 光标移动到屏幕最上方一行(中间一行 / 最后一行)

  * G 光标移动到最后一行 (nG光标移动到第n行,显示行号,配合set nu

  * nG  光标移动到第n行

  * gg  光标移动到第一行第一个字母

  * n + Enter 光标向下移动n行

  * ctrl + f  屏幕向前翻一页

  * ctrl + b 屏幕向后翻一页

  * ctrl + u 屏幕向前翻半页

  * ctrl + d 屏幕向后翻半页

  

2. 编辑模式

  * /word 在光标之后查找word

  * ?word 在光标之前查找word

  * :n1,n2s/word1/word2/g 在n1行和n2行之间搜索word1,并替换为word2(g表示全局替换)

  * :n1,n2s/word1/word2/gc 在n1行和n2行之间搜索word1,并替换为word2(g表全局,c表示需要确认)

  * :1,$s/word1/word2/gc 在首行到尾行之间搜索word1,并替换为word2

3. 剪切(删除)、复制、粘贴

  * x / X  向后删除一个字符(向前)

  * nx  向后删除n个字符

  * nw 向后删除n个单词

  * dd 删除光标所在整行(即剪切至缓冲区)

  * ndd  删除光标所在n行

  * d1G 删除光标到第一行

  ----------------------------

  * nyl / nyh 复制光标所在向后(向前)n的字符

  * nyw  复制光标后的n个单词

  * nyy 复制光标所在n行

PS: (复制强大功能,部分系统不支持

  通过v到visual模式,然后直接选择文本,通过y或者d进行复制或者剪切


  * y1G  复制光标所在行到第一行

  * yG  复制光标所在行到最后一行

  * p / P 粘贴内容到光标所在行的下一行(上一行)

  * J 将光标所在行和下一行进行连接(方便删除空白)

4. 撤销

  * u  撤销上次操作

5. 编辑

  * i  在当前字符前插入

  * a 在当前字符后插入

  * r  在当前字符上进行替换

  * R 从当前字符开始进行替换,直到esc为止(可替换多个字符)

  * o / O (在当前行下插入空行,并将光标移到下一行; O相反)

6. 命令行模式

  * q 不保存关闭文件,如果有修改,会有提示是否保存

  * q! 强制关闭文件,不保存

  * wq  保存文件,并关闭

  * w  保存文件

  * w!  强制保存文件

  * wq!  强制保存文件,并关闭

原文地址:https://www.cnblogs.com/chyong168/p/2256071.html