前言:

    博文详细的介绍了,Linux vi 编辑器使用方法

(1)  vi的使用方式有三种

 命令行模式  文本模式   末行模式


(2) 命令行模式可以复制,删除,粘贴,插入,撤销, 跳转操作

      复制命令:

   <1> yy 表示复制光标所在的一行 

   <2> nyy  表示从光标行开始复制几行

   <3>yG 从光标行复制到末尾行

   <4>ygg 从光标行复制到首行


     粘贴命令:

     <1> p 表示粘贴

     <2> np 表示粘贴几次 (n表示粘贴的参数)


     删除命令:

     <1> dd   删除一行

     <2> ndd (参数n表示要删除几行)

     <3>dgg 删除光标行到首行

     <4>dG   删除光标行到末尾行

     <4> x 表示删除一个字符


    插入命令:

    <1> o 表示跳转到光标所在的下一行插入

    <2> O 表示跳转到光标所在的上一行插入

    <3>  a 表示从光标所在字符的后一个位置开始录入

    <4>  A 表示从光标所在的行尾开始录入

    <5> i 表示从光标所在的前一个位置开始录入

    <6> I 表示从光标所在的行首开始录入

    

     撤销命令:

     <1>  u表示撤销上一次

     <2>  U表示撤销所有


     跳转命令:

     <1> G: 表示跳转到最后一行

     <2> gg: 表示跳转到首行

     <3> shift+$ 表示跳转到一行的末尾

     <4> shift+^ 表示跳转到一行的首部


(3) 末行模式可以保存,查找,替换操作

     保存命令:

      :w 表示保存   :q 表示退出    :wq 表示保存退出

      :wq! 强制保存退出   :q! 表示强制退出

     

      查找命令:

       / 输入要查找的内容  n 表示接着向下查找


       替换命令:

            ① :n,n s/key/word/g (n表示行号)

               例:

                       <1> :s/shanghai/beijing/g

                         将shanghai 替换成 beijing  前提是光标要移动到所在那一行

                       

                       <2> :s/shanghi/beijing/

                         将这一行第一次出现的shanghai替换成beijing


                        <3> :%s/shanghai/beijing  %表示替换所有的行


                        <4>:1,2s/shanghai/beijing/g

                           将第一行,第二行的shanghai 替换成 beijing

                           如果不加g表示,只出现这一行第一次出现的shanghai替换成beijing

            ② 替换特殊字符

                 将http://www.baidu.com 替换成new

                  :%s#http://www.baidu.com#new#

                注释:  这段替换内容中含有: /  linux中会报错的,我们用#来防止替换的内容发生歧义

        (4) 文本模式

          编辑一个文件的时候,首先会进入命令行模式,键盘上按一个i键,就会转换成文本模式


        (5) : set nu  表示打印工作行数字   :set nonu  取消打印工作行数字