排名三剑客的VIM _正确的打开姿势!

vim程序编辑器
    
    vi:是老式的文字处理器。

    vi的使用:【vi分为3种模式一般模式、编辑模式、命令模式】

        一般模式:   vi打开文件就直接进入到了一般模式

                      【在这个模式中用户可以删除字符或删除整行、也可以复制、粘贴文件数据】

          编辑模式:   在一般模式中要等用户按了【i、I、o、O、a、A、r、R】任何字母后才能进入编辑模式。

                       【如果要反回一般模式则需要按下esc键】

          命令行模式: 在一般模式中输入【:、/、?】3个中的任何按钮就可以将光标移动到最后一行就进入到了命令行模式

                       【在这个模式下可以提供你查找数据操作、读取、保存、大量替换字符、离开VI、显示行号等操作都在该模式下】

                       【如果要反回一般模式则需要按下esc键】

         一般模式与编辑模式以及命令行模式可以互相切换、但是编辑模式与命令行模式之间不能相互切换

    按键说明:

        第一部分:一般模式可用的按键说明、光标移动、复制粘贴、查找替换等。

                移动光标的方法:

                    h或向左箭头:表示光标向左移动一个字符
                    j或向下箭头:光标向下移动一个字符
                    k或向上箭头:光标向上移动一个字符
                    l或向右箭头:光标向右移动一个字符

                    进行行移动:前边加上移动的行数加光标移动方法组合就可完成

                     ctrl+f:屏幕向下移动一屏  【常用】
                     ctrl+b:屏幕向上移动一屏  【常用】
                     ctrl+d:屏幕向下移动半页
                     ctrl+u:屏幕向上移动半页

                     +:光标移动到非空格符的下一行
                     -:光标移动到非空格符的上一行

                     H:光标移动到屏幕的最上方那一行的第一个字符
                     M:光标移动到屏幕的中央那一行的第一个字符
                     L:光标移动到屏幕的最下方那一行的第一个字符
                     G:光标移动到这个文件的最后一行
                     nG:移动到这个文件的第n行
                     gg:移动到这个文件的一行  =1G 【常用】
                     N[Enter] :光标向下移动n行 【常用】

                查找与替换

                    /字符串:向下寻找需要的字符串  【常用】
                    ?字符串:向上寻找需要的字符串  【常用】
                    n  :重复前一个查找的操作
                    N :与n相反,反向进行前一个查找操作

                删除、复制与粘贴

                    xX:x向后删除一个字符。X向前删除一个字符。【常用】
                    nx:连续向后删除n个字符
                    dd:删除光标所在那一行的一整行。【常用】
                    ndd:删除光标所在行向下n行。【常用】
                    d1G:删除光标所在到第一行的所有数据。
                    dG:删除光标到最后一行的所有数据。
                    d$: 删除光标所在处到这行的最后一个字符
                    d0:删除光标所在处到该行的最前面一个字符

                    yy:复制光标所在的那一行【常用】
                    nyy:复制光标向下所在n行
                    y1G:复制光标所在行到第一行的所有数据
                    yG:复制光标所在行到最后一行的所有数据
                    y$: 复制光标所在的那个字符到这行的行尾最后一个字符
                    y0:复制光标所在的那个字符到这行的行首最后一个字符

                    pP: p :将已经复制的数据在光标下一行粘贴;
                    P:粘贴在光标上一行;
                    J :将光标所在行与下一行的数据结合成同一行
                    c :重复删除多个数据
                    u:复原前一个操作【常用】
                    ctrl+r :重做上一个操作【常用】
                    . :重复前一个操作  【常用】
    

    一般模式切换到编辑模式的可用按钮   【全常用】

                    i,I :进入插入模式

                            i:从目前光标处插入
                            I:在目前所在的第一个非空格字符处开始插入

                    a,A:进入插入模式
                            a:从目前光标所在的下一个字符处开始插入
                            A:从光标所在行的最后一个字符处开始插入

                    o,O : 进入插入模式

                            o:在目标光标前所在的下一行处插入新的一行
                            O:在目前光标的所在的上一行处插入新的一行

                    r,R:进入替换模式

                            r:替换光标所在的那一个字符一次
                            R:一直替换光标所在的文字,知道按下esc为止

                    esc:退回到一般模式中

    一般模式切换到命令行模式的可用按钮

                    :w  :将编辑的数据写入硬盘文件中、
                    :w! :若文件只有阅读权限可强制写如该文件
                    :q  :离开vi
                    :q!:强制离开且不保存                   【!在vi中常用作强制的作用】
                    :wq  :保存后离开        【常用】
                    :wq!:强制保存后离开
                    ZZ: 在文件没有改动的情况下,离开;若改变文件则是保存后离开
                    :w 文件名:  将编辑后的文件保存到里另一个文件
                    :r  文件名:  在编辑数据中,读入另一个文件的数据,即将这个文件内容加载到光标所在行后
                    :n1,n2 w 文件名  :将n1到n2的数据保存成文件名这个文件
                    :! command :  暂时离开vi到命令行模式下执行command的显示结果。

        vim编辑:

                    :set nu :显示行号。
                    :set nonu :取消行号

vim保存文件、恢复与打开时的信息警告

vim 块选择:

    块选则的按键意义

        V:字符选择【将光标经过的地方反选白】
        V:行选择【将光标经过的行反白选择】
        ctrl+V:块选择【用长方形的方式选择数据】
        y:将反白的地方复制起来
        d:将反白的地方删除

多文件编辑的按键
    
    :n :编辑下一文件

    ;N  :编辑上一个文件

    :files  :列出目前这个vim的打开的所有文件

多窗口功能
    
     如果想要在新窗口启动另一个文件,就加入文件名,否则仅输入:sp时,出现的则是同一个文件在两个窗口间

     多窗口情况下的按键功能

         :sp [文件名]  :打开一个新窗口

         ctrl+w+j :光标可移动到下方窗口 【ctrl+w+向下方向键】

         ctrl+w+k :光标可移动到上面的窗口【ctrl+w+向上方向键】

         ctrl+w+q :结束离开

原创文章,作者:GYF,如若转载,请注明出处:http://www.178linux.com/73139

(0)
GYFGYF
上一篇 2017-04-10
下一篇 2017-04-11

相关推荐

  • 推荐-虚拟化网络之OpenvSwitch(二)

    上一篇介绍了openvswitch的基础知识,接下来我们来做一个实验,利用GRE通道搭建一个跨多宿主机的虚拟化网络,深入了解openvswitch的功能。 一、实验拓扑 ip地址分配:  A1:192.168.10.1/24  A2:192.168.10.10/24   B1:192.168.10.2/24 &nbsp…

    2016-03-27
  • Jmeter性能测试 入门

    Jmeter是一款优秀的开源测试工具, 是每个资深测试工程师,必须掌握的测试工具,熟练使用Jmeter能大大提高工作效率。 熟练使用Jmeter后, 能用Jmeter搞定的事情,你就不会使用LoadRunner了。 【小坦克Jmeter教程】,将会覆盖Jmeter的各个功能,并且会通过丰富的实例,让读者快速掌握Jmeter的各种用法 。 本文将通过一个实际的…

    Linux干货 2015-03-06
  • Linux启动之GRUB详解

    GRUB 在BIOS读取先关信息之后,接下来就是去第一个可以启动的设备当中的MBR中读取Boot loader信息,bootloader具有菜单功能、直接加载内核信息,以及相关控制权限转交功能。所以说系统的启动必须有bootloader,然后才能去加载内核 grub:GRand Unified Bootloader  …

    Linux干货 2016-09-15
  • 第九周作业

    awk基础 简介        AWK是一种优良的文本处理工具。它是 Linux 中也是任何环境中现有的功能最强大的数据处理引擎之一,相比sed常常作用于一整行的处理,awk比较倾向于将一行分成数个“字段”来处理。所以,awk相当适合处理小型的数据处理。 基础用法 awk[选项] ‘program’…

    2017-07-16
  • 笔记–8.8 shell脚本编程

    shell编程注意事项  1,指令的执行是从上而下,从左而右的分析与执行  2,指令的下达时:指令,选项与参数之间的多个空白都会被忽略掉  3,空白行会被忽略掉,并且tab键所推开的空白同样视为空格键  4. 如果一行的内容太多,则可以使用『 \[Enter] 』来延伸至下一行  5,『 # 』可做为批注,任…

    Linux干货 2016-08-12
  • varnish学习总结

    什么是web cache?   Web缓存是指一个Web资源(如html页面,图片,js,数据等)存在与Web服务器和客户端(浏览器)直接的副本。缓存会根据进来的请求保存输出内容的副本;当下一个请求到来的时候,如果是相同的URL,缓存会根据缓存机制决定是直接使用副本响应访问请求还是向源服务器再次发送请求。       …

    Linux干货 2015-07-15

评论列表(1条)

  • renjin
    renjin 2017-04-12 11:39

    主要介绍了vim的用法,内容写的很详细,注意一下排版就好