Linux 中 Vi 编辑器的简单操作

Linux 中 Vi 编辑器的简单操作

  Vi 编辑器一共有3种模式:命名模式(默认),尾行模式,编辑模式。3种模式彼此需要切换。

  一、进入 Vi 编辑器的的命令

    vi  filename  //打开或新建文件,并将光标置于第一行首

    vi  +n  filename  //打开文件,并将光标置于第n行首

    vi  +  filename  //打开文件,并将光标置于最后一行首

    vi  +/pattern  filename  //打开文件,并将光标置于第一个与 pattern 匹配处

    vi  -r  filename  //在上次使用 vi 编辑时发生系统崩溃,恢复 filename

  二、Vi 3种模式的切换

    一)、从命令模式到编辑模式

      在命令模式下按以下命令将进入到编辑模式

      1、a  在光标后进入编辑模式

      2、i  在光标前进入编辑模式

      3、A  在当前行尾进入编辑模式

      4、I  在当前行首进入编辑模式

      5、o  在当前行之下新开一行

      6、O  在当前行之上新开一行

      7、s  删除光标所对应的字符,进入编辑模式

      8、ns  //删除 n 个字符后进入编辑模式

      9、S  删除光标所在的行,然后进入编辑模式

      10、nS  //删除 n 行后,进入编辑模式

  三、命令模式下的操作

    一)、光标的移动

      1、j  光标向下移动一行

      2、k  光标向上移动一行

      3、h  光标向左移动一个字符

      4、l  光标向右移动一个字符

      5、ctrl + b  //光标向上移动一屏,向后翻页

      6、ctrl + f  //光标向下移动一屏,向前翻页

      7、$  //光标移动至行尾

      8、0(数字)  //光标移动至行首

      9、gg  //光标移动至文档开始处

      10、G  //光标移动至文档尾部

      11、nG  //光标移动到第 n 行

      12、w  //移动到下个单词的首字母

      13、b  //移动到本单词或者上个单词的首字母

      14、e  //移动到本单词或者下个单词的尾字母

      15、{  //光标移动到段落首部

      16、}  //光标移动到段落尾部

      17、L  //光标移动到当前屏幕尾部(不会走到下一屏)

      18、H  //光标移动到当前屏幕首部

      19、M  //光标移动至当前屏幕中间行

      20、space  //光标向前移动一个字符

      21、Backspace  //光标向后移动一个字符

      22、n+  //光标下移 n 行

      23、n-  //光标上移 n 行

      24、n$  //光标移动至第 n 行尾

    二)、文本内容的删除

      1、x  //删除光标所在位置的一个字符

      2、nx  //删除光标所在位置起 n个字符

      3、dx  //从当前字符删除到下个单词前,包括空格

      4、ndx  //从当前字符(单词)起,删除n个单词,包括最后一个空格后面的空格

      5、dd  //删除当前行

      6、ndd  //删除当前行起向下 n 行

      7、J  //删除光标所在行与下一行之间的空格,把光标行和下一行接在一起

      通用删除:d+光标移动距离

      8、d$  //删除光标到行尾的内容

      9、d0  //删除光标到行首的内容

      10、d}  //删除从光标到段落尾部的内容

      11、d{  //删除从光标到段落首部的内容

      12、dL  //删除当前行至屏幕尾部的内容

      13、dH  //删除当前行至屏幕首部的内容

      14、dG  //删除当前行至文档尾部的内容

      15、d1G  //删除当前行至文档首部的内容

      16、dnG  //删除当前行至文档的第 n 行

    三)、文本内容的复制与粘帖

      1、yy  复制当前行

      2、nyy  复制从当前行开始向下的n行

      3、y+光标移动的距离,可以进行灵活复制 (可以参考删除命令)

      3、p  在光标之后粘贴(光标当前行的下一行进行粘贴)

      4、P(大写)  在光标之前粘贴    

    三)、其他命令模式下的操作

      1、u  //撤销修改或删除操作

      2、r+字符  //对光标当前单个字符进行替换

      3、R  //替换当前字符及其后的字符,直至按 ESC 键

      3、.  //重复执行上个命令

    

  四、尾行模式下的操作

    一)、文件的保存与退出

      1、:w  //保存

      2、:w  filename  //另存为到 filename 文件

      3、:wq  //保存退出

      4、:q  //退出

      5、:wq!  //强制保存退出

      6、:q!  //不保存强制退出

      7、:x  //保存并退出 ,应该和 wq! 功能一样

    二)、查找与替换

      1)、/search  正向查找字符串 search,按 n 键查找下一个,按 N 键查找上一个

      2)、?search  反向查找字符串 search

      3)、s /search/replace  替换当前行首次出现的 search

      4)、s /search/replace/g  把当前光标所在行中的 search 替换成 replace,并把文档中其余的 search 高亮显示

      5)、%s /search/replace  把文档中所有的 search 替换成 replace

      6)、m,n s /search/replace/g  把文档中从第m行到第n行中的 search 替换成 replace ,将把文档中其余的 search 高亮显示

    三)、尾行模式下的文本编辑(复制,删除)

      1)、n1,n2 co n3  //将 n1 行到 n2 行的内容复制到 n3 行下

      2)、n1,n2 m n3  //将 n1 行到 n2 行的内容移动至 n3 行下

      3)、n1,n2 d  //将 n1 行到 n2 行之间的内容删除

    :set nu/number  //给文件每行内容设置编号

    :set  nonu/nonumber  //取消设置编号

     :n  光标跳转到第 n 行位置

  五、编辑模式下的操作

    1、ctrl+u  //删除编辑模式下输入的文本内容

    

上一篇:linux vim vi编辑时撤销输入操作


下一篇:Apache以及PHP的默认编码问题解决(详解)