強大的vim編輯器

vim編輯器

一、Vim編譯器的概述

vi: Visual Interface,文本編輯器 v

文本:ASCII, Unicode v

 文本編輯種類:

     行編輯器: sed

     全屏編輯器:nano,

     vi vim – Vi Improved v

其他編輯器:

     gedit 一個簡單的圖形編輯器

     gvim 一個Vim編輯器的圖形版本

 

 

二、打開文件方式

v  # vim [OPTION]… FILE…

       +#: 打開文件后,直接讓光標處于第#行的行首

       +/PATTERN:打開文件后,直接讓光標處于第一個被 PATTERN匹配到的行的行首

       vim + file 直接打開file,光標在最后一行

       vim –b file 二進制方式打開文件

       vim –d file1 file2…  比較多個文件

       vim  -m file  只讀打開文件

vex  file 或 vim –e  直接進入ex模式 v

 如果該文件存在,文件被打開并顯示內容

如果該文件不存在,當編輯后第一次存盤時創建它

 

 

三、vim:一個模式編輯器 v

     擊鍵行為是依賴于 vim的 的“模式” v

     三種主要模式:

                 命令模式(默認):移動光標,剪切/粘貼文本

                 插入(編輯)模式:修改文本

                 擴展命令模式:保存,退出等 v

                 Esc鍵 退出當前模式 v

                 Esc鍵 Esc鍵 總是返回到命令模式

 

四、模式轉換

v  命令模式 –> 插入模式

        i: insert, 在光標所在處輸入

        I:在當前光標所在行的行首輸入

        a: append, 在光標所在處后面輸入

        A:在當前光標所在行的行尾輸入

        o: 在當前光標所在行的下方打開一個新行

        O:在當前光標所在行的上方打開一個新行

 

           插入模式 —-> 命令模式

                    ESC v

           命令模式 —-> 擴展模式

                     : v

           擴展模式 —-> 命令模式

                     ESC v

           鎖定和解鎖:CTRL+s,Ctrl+q

 

五、關閉命令

       擴展模式:

               :q 退出

               :q! 強制退出,丟棄做出的修改

               :wq 保存退出

               :x 保存退出 v

       命令模式 :

               ZZ: 保存退出

               ZQ:不保存退出

 

六、擴展模式

v     按“:”進入Ex模式 v

       創建一個命令提示符:,處于底部的屏幕左側 v

       命令:

            w 寫(存)磁盤文件

            wq 寫入并退出 x 寫入并退出

            q  退出

            q! 不存盤退出,即使更改都將丟失

            r filename 讀文件內容到當前文件中

            w  filename  將當前文件內容寫入另一個文件

            !command

            r!Command

 

、命令模式光標跳轉

       字符間跳轉:

                  h: 左

                  l: 右

                  j: 下

                  k: 上

                  #COMMAND:跳轉由#指定的個數的字符; v

       單詞間跳轉:

                  w:下一個單詞的詞首

                  e:當前或下一單詞的詞尾

                  b:當前或前一個單詞的詞首

                  #COMMAND:由#指定一次跳轉的單詞數 v

        當前頁跳轉:

                   H:頁首

                   M:頁中間行

                   L:頁底

v      行首行尾跳轉:

                   ^: 跳轉至行首的第一個非空白字符;

                   0: 跳轉至行首

                   $: 跳轉至行尾 v

        行間移動:

                 #G、擴展模式:# :跳轉至由#指定行

                  G:最后一行

                  1G, gg: 第一行 v

        句間移動:

                 ):下一句 (:上一句 v

        段落間移動:

                  }:下一段 {:上一段

 

八、命令模式翻屏操作

 

v    Ctrl+f: 向文件尾部翻一屏 v

      Ctrl+b: 向文件首部翻一屏 v

      Ctrl+d: 向文件尾部翻半屏 v

      Ctrl+u:向文件首部翻半屏

 

九、命令模式操作

      字符編輯:

              x: 刪除光標處的字符;

             #x: 刪除光標處起始的#個字符

             xp: 交換光標所在處的字符及其后面字符的位置

              ~:轉換大小寫

v    替換命令(r, replace)

              r: 替換光標所在處的字符

              R:切換成REPLACE模式

      刪除命令:

              d: 刪除命令,可結合光標跳轉字符,實現范圍刪除;

             d$: 刪除到行尾

             d^:刪除到非空行首

             d0:刪除到行首

             dw:

             de:

             db: #COMMAND v

        dd: 刪除光標所在的行

            #dd:多行刪除 v

              D:從當前光標位置一直刪除到行尾,留空行,等同于d$

      復制命令(y, yank):

              y: 復制,行為相似于d命令

              y$

              y0

              y^

              Ye

              yw

              yb

              #COMMAND v

              yy:復制行

             #yy: 復制多行 v

               Y: 復制整行

       粘貼命令(p, paste):

                p:緩沖區存的如果為整行,則粘貼當前光標所在行的下 方;否則,則粘貼至當前光標所在處的后面

                P:緩沖區存的如果為整行,則粘貼當前光標所在行的上 方;否則,則粘貼至當前光標所在處的前面

        改變命令(c, change)

                c: 修改后切換成插入模式 v

命令模式 –> 插入模式

            c$

            c^

            c0

            Cb

            ce

            Cw

            #COMMAND v

 cc:刪除當前行并輸入新內容

           #cc: v

  C:刪除當前光標到行尾,并切換成插入模式

 

 

十、擴展模式:查找并替換

v   s: 在擴展模式下完成查找替換操作

         格式:s/要查找的內容/替換為的內容/修飾符

         要查找的內容:可使用模式

         替換為的內容:不能使用模式,但可以使用\1, \2, … 等后向引用符號;還可以使用“&”引用前面查找時查找到的整 個內容

         修飾符:

         i: 忽略大小寫

         g: 全局替換;默認情況下,每一行只替換第一次出現

        gc:全局替換,每次替換前詢問 v

查找替換中的分隔符/可替換為其它字符,例如

 s@/etc@/var@g

 s#/boot#/#i

 

十一、命令模式:撤消更改

v   u撤銷最近的更改 v

#u撤銷之前多次更改 v

U 撤消光標落在這行后所有此行的更改 v

 按Ctrl – r重做最后的“撤消”更改

v. 重復前一個操作 v

n.重復前一個操作n次

原創文章,作者:xiaoqiang512,如若轉載,請注明出處:http://www.www58058.com/33256

(0)
xiaoqiang512xiaoqiang512
上一篇 2016-08-12 09:01
下一篇 2016-08-12 09:01

相關推薦

  • Linux簡單的磁盤分區、格式化和掛載

     一.分區: 1.查看分區fdisk -l 通過fdisk -l 查看機器所掛硬盤個數及分區情況   2.通過上面的信息,我們知道此機器中掛載兩個硬盤分別是:/dev/sda和/dev/sdb, 其中sda有兩個主分區/dev/sda1和sda2; 其中sdb有1個擴展類型/dev/sdb3和3個邏輯分區sd…

    Linux干貨 2016-02-28
  • 計算機構成與Linux基礎知識之一

    簡述計算機構成,Linux如何誕生及主流發行版;簡單命令介紹;如何獲取幫助及Linux目錄命名及功用簡介紹。

    2018-02-26
  • Linux哲學思想

    一、一切皆文件     1、將所有資源都抽象成文件形式;     2、幾乎可以通過讀寫文件的形式,操作所有的系統資源。 二、由一個一個的小程序組成,且每一個小程序只做一件事情,并且只做好該件事情即可     1、一個小程序只做好一件事情,即…

    Linux干貨 2016-09-19
  • 淺談netbios及其相關內容

    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://jeffyyko.blog.51cto.com/28563/141086        Netbios想必大家都有接觸。對于netbios的理解,我以前…

    Linux干貨 2015-03-26
  • 網絡的冰山一角

        這周我們學習了網絡管理,每一天進度特別快,上課認真聽了,但是感覺也只能聽懂一半。所以我決定把網絡管理作為這周博客寫一寫,這樣相當于又復習了一邊,能加深印象。 一、用戶應用程序對網絡的影響     1、批處理應用程序:無需直接人工交互,寬帶很重要,但是并非關鍵性因素。 &n…

    2017-09-04
  • Shell腳本編程—函數

    函數:     把一段獨立功能的代碼當作一個整體,并命名一個名字;命名的代碼段,此即為函數     由若干條shell命令組成的語句塊,實現代碼重用和模式化編程 函數的作用:     在某些場景下,我們可以將獨立功能的一段代碼定義為一個函數…

    Linux干貨 2016-08-24
欧美性久久久久