zoukankan      html  css  js  c++  java
  • 一段奇妙的vim编辑器之旅

    一、背景

      对于Linux服务器上的操作,我们往往少不了使用vim,而有时候我对vim的使用并没有那么的熟练和深入,这周就深入的学习了vim的使用,包括入门和进阶,先分享给你们,也方便自己以后复习查询。

    二、vim入门

      1.启动vim,使用命令:vim fileName

        如果该文件存在,则打开并显示内容;如果文件不存在,则在第一次保存的时候创建新文件。

      2.vim的三种模式

        命令模式:可以移动光标、删除、复制、搜索。

        插入模式:通过输入"a"、"i"、"o"中任意一个字符,可以进入该模式来进行修改文件内容。

        扩展模式:通过输入":"字符进入该模式,可以进行退出、保存、查找替换等操作。(如果在插入模式可以按ESC键返回命令模式再进行该操作)。

      3.命令模式下移动光标

        使用"h"、"j"、"k"、"l"来进行向左、向下、向上、向右移动,或者使用方向键。

        "w"移动到下一个单词,"b"移动到上一个单词。

      4.命令模式下的删除、修改、复制操作。

        

      即:

        行:cc(修改)、dd(删除)、yy(复制)

        字符:cl(修改)、dl(删除)、yl(复制)

        单词:cw(修改)、dw(删除)、yw(复制)

      5.撤销操作

        "u",撤销最近一次的修改 undo

        "U",撤销所有修改

        "ctrl+r",取消最后一次的撤销,redo

      6.查找操作(扩展模式或命令模式下)

        "/keyword",向后搜索

        "?keyword",向前搜索

        "n",查找下一个

        "N",查找上一个

      7.粘贴

        "p或P":粘贴已复制、已修改或已删除的数据。(命令模式下被修改以及删除的数据会默认复制到剪切板)

        对于行数据,"P"粘贴到上一行,"p"粘贴到下一行。

        对于字符数据,"P"粘贴到字符左侧,"p"粘贴到字符右侧

      8.命令模式下的一些技巧

        "dtc",删除从光标到字符c之间的所有字符

        "rc",将光标下的字符替换成c字符

        "dw",删除光标所在的单词的从光标处到结尾的所有字符

        "ndd",删除光标开始往下n行数据,比如5dd。

        "nyy",复制从光标开始往下n行数据,比如3yy.

        "nx",删除从光标开始的n个字符,比如4x.

        "R",进入替换状态,按ESC键退出。

      9.退出、保存、进入扩展模式

         命令模式和插入模式按ESC键并输入":"进入扩展模式

         ":w",保存

         ":q",退出

         ":wq",保存并退出

         ":w!",强制保存

         ":q!",强制退出

         ":wq!",强制保存退出

    三、vim编辑器使用进阶

      1.文件内定位(命令模式下)
            "G",跳转到文件最后一行
            "1G",跳转到文件的第一行
            "ctrl+d",往下滚动半屏
            "ctrl+u",往上滚动半屏

      2.屏幕定位相关(命令模式下)
            "H",跳转到本屏显示的第一行
            "M",跳转到本屏显示的中间一行
            "L",跳转到本屏显示的最后一行
            "z"+"Enter",使当前的行成为屏幕显示的第一行
            "z"+"-",使当前行成为屏幕的最后一行

      3.查找并批量替换(扩展模式下)
            通过sed来查找 ,":s/keyword/replaceWord/g"
                将当前行的所有keyword都替换成replaceWord,如果不加"/g"则只替换第一个keywords
              默认对当前行进行查找
               n1,n2,对文件的n1到n2行进行查找,如:1,10 s/a/123/g 将第一到第十行中的a替换成123
               1,$,对整个文件查找

      4.读取和保存(扩展模式下)
            ":r fileName" 将另一个file的内容读入到当前文件
            "1,20 w file" 将当前编辑文件的1-20行的内容写入到一个新的file中
            "1,$ w file"将整个文件写入一个新的file
            "1,20 w >> file" 将当前编辑文件的1-20行内容追加到file中

      5.设置(扩展模式下)
            1.":set",显示常用的配置选项
            2.":set all",显示所有的配置选项
            3.":set number",设置行号

    四、总结

      通过本文的学习,我们对vim编辑器有了入门以及进阶的了解,当我们掌握了这些技巧以后,在linux下使用vim进行操作文本变得不再是难事,很爽有木有~,为了梦想,我一直在路上,你呢?

  • 相关阅读:
    【jQuery EasyUI系列】使用属性介绍
    【jQuery EasyUI系列】创建CRUD数据网格
    [jQuery EasyUI系列] 创建增删改查应用
    [JQuery EasyUI系列]简介
    Javascript 使用小案例
    Spring学习进阶(一)初识Spring
    No plugin found for prefix 'jetty' in the current project and in the plugin groups 【转】
    工作框架各种使用整理 --创建的时候使用前面创建成功的输出
    工作框架各种使用整理---自己处理分页
    策略模式
  • 原文地址:https://www.cnblogs.com/hafiz/p/6752077.html
Copyright © 2011-2022 走看看