Linux之vim使用

1.  文本编辑器种类

    行编辑器  sed

    全屏编辑器  nano  vi  vim

2.  vim使用

    1.  模式化的编辑器

        常用模式

          编辑模式

          输入模式

          末行模式

    2.  打开文件

        语法:  vim    file

        例子:

[root@mysql-37 ~]# vim +5 /etc/fstab
打开文件后,光标处于第5行的行首 
[root@mysql-37 ~]# vim +/a /etc/fstab
打开文件后,光标处于第一个匹配字符所在行的行首 

    3.  模式转换

        默认是编辑模式

        1.  编辑模式----->输入模式

            i:  光标所在处插入

            I:  光标所在行的行首插入

            a:  光标所在处后方输入

            A:  光标所在行的行尾输入

            o:  光标所在行的下方输入,默认在行首

            O:  光标所在行的上方输入,默认在行首  

        2.  输入模式----->编辑模式

            ESC

        3.  编辑模式----->末行模式

            冒号

        4.  末行模式----->编辑模式

            ESC

    4.  关闭文件

        ZZ  编辑模式下,保存退出

        :q  末行模式下,没有修改退出

        :q!  末行模式下,强制退出

        :wq  末行模式下,保存并退出

        :x  末行模式下,保存并退出

        :w  /path/file  末行模式下,另存为其它文件

    5.  光标跳转

        1.  字符间跳转

            h  向左一个字符

            j  向下一行

            k  向上一行

            l  向右一个字符

            可以在这几个命令前面加数字,对应就是向某个方向多少位。

            10h  向左10个字符

        2.  单词间跳转

            w  下一个单词的词首

            b  当前单词的词首或前一个单词的词首

            e  当前或后一个单词的词尾

            10w  后面第10个单词的词首  

        3.  行首行尾跳转

            ^  跳转至行首的第一个非空字符

            0  跳转至行首  绝对行首

            $  跳转至行尾  绝对行尾

        4.  行间跳转

            G  跳转到最后一行的行首

            gg  跳转到第一行的行首

            2G  跳转到第二行的行首

        5.  句间跳转

            (  向上跳转一句  

            )  向下跳转一句

            2(  向上跳转两句

        6.  段间跳转

            {  向上跳转一段

            }  向下跳转一段

            2{  向上跳转两段

    6.  翻屏操作

        ctrl+f  向文件尾部翻一屏

        ctrl+b  向文件首部翻一屏

        ctrl+d  向文件尾部翻半屏

        ctrl+u  向文件首部翻半屏        

    7.  编辑模式

        1.  字符编辑

            x  删除光标所在处的字符

            2x  删除两个字符(包含光标所在处的字符)  

            xp  交换光标所在处的字符与其后方的字符

        2.  替换命令

            r  替换光标所在处的字符  

        3.  删除命令

            d  删除命令

            d$  删除光标所在处的内容到行尾(包含光标所在处的字符)

            d^  删除光标所在处的内容到行首(不包含光标所在处的字符)  

            dw  删除光标所在处的单词(如果光标所在处在单词首部,删除整个单词;如果在单词中间,删除光标所在处的字符到单词尾部)  也会删除单词后面的空格字符  

            de  删除光标所在处的单词(如果光标所在处在单词首部,删除整个单词;如果在单词中间,删除光标所在处的字符到单词尾部)  不会删除单词后面的空格字符  

            db  删除光标所在处的前一个单词(如果光标所在处在单词首部,删除前一个单词,包括空格;如果光标所在处在单词中间,删除光标所在处到该单词的首部)  

            3dw  删除光标所在处后的三个单词  

            dd  删除光标所在处的整行

            3dd  删除光标所在处开始的三行

        4.  粘贴命令

            p  如果复制的内容为一整行,则粘贴在当前光标所在处的下方;如果不是一整行,则粘贴在当前光标所在处的后方    

            P  如果复制的内容为一整行,则粘贴在当前光标所在处的上方;如果不是一整行,则粘贴在当前光标所在处的前方

        5.  复制命令

            y  

            y$  复制光标所在处到行尾的内容,包含光标所在处    

            y^  复制光标所在处到行首的内容,不包含光标所在处  

            y0  复制光标所在处到行首的内容,不包含光标所在处    

            ye  复制光标所在处到单词的词尾,包含光标所在处,不包含空格  

            yw  复制光标所在处到单词的词尾,包含光标所在处,包含空格  

            yb  复制光标所在处到单词的词首,或者前一个单词  

            yy  复制光标所在处的一整行

            3yy  复制光标所在处开始的3行

        6.  改变命令

            c

            c$

            c^

            c0

            cb

            ce

            cw

            3cc

    8.  可视化模式

        v  

        V

    9.  撤销操作

        u  撤销操作

        4u  撤销4步操作

    10.  撤销此前的撤销

        ctrl+r

    11.  末行模式

        1.  地址定界

            :start_postion,[end_positon]

              3,5  第3行到第5行  无论光标在什么地方

              3,+2  从第3行开始,往下数两行

              .  当前行

              $  最后一行

              %  全文

        2.  查找

             /pattern

              /a  从当前行开始向文件尾部查找匹配a的所有字符串

              ?a  从当前行开始向文件头部查找匹配a的所有字符串

              n  下一个

              N  上一个

        3.  查找并替换

            s/要查找的内容/替换为的内容/修饰符

            修饰符

              I:  忽略大小写

              g:  全局替换,意味一行中匹配多次,均替换

            例子:

              全文所有替换

                :%s/要查找的内容/替换为的内容/g  不带g只替换行的第一个匹配的

              某一行替换

                :1s/要查找的内容/替换为的内容/g  不带g只替换行的第一个匹配的

3.  实用例子

      1.  注释多行

          ctrl+v--->  选择多行,按上下左右键 ----> shift+i  ---->  输入# -----> esc

      2.  解除注释多行

          ctrl+v--->  选择多行,按上下左右键----->d

      3.  从windows复制粘贴到linux的vi或vim中

          ctrl+c---->shift+insert

          

    

              

              

  

              

posted @ 2019-09-19 11:46  奋斗史  阅读(216)  评论(0)    收藏  举报