linux之vim編輯器詳解

字處理器:像word,wps,除了本文本身以外,還有修飾方面的設置。

文本編輯器:編輯純ASCII文檔。


nano,sed  入門簡單,功能簡陋。


強大的vi編輯器 (Visual Interface)

現在是Vim :VI  inproved

它是全屏編輯器,模式化編輯器。


vim模式:

編輯模式(命令模式)

輸入模式

末行模式

       默認處於編輯模式。


模式轉化:

   編輯模式--->輸入模式:

       i :在當前光標所在字符的前面,轉爲輸入模式。

       a:在當前光標所在字符的後面,轉爲輸入模式。

       o:在當前光標所在行的下方,新建一行,轉爲輸入模式。


        I: 在當前光標所在行的行首,轉換爲輸入模式

       A:在當前光標所在行的行尾,轉換爲輸入模式

       O:在當前光標所在行的上面,轉換爲輸入模式

   輸入模式---->編輯模式:

       ESC

   編輯模式---->末行模式

       :

           10d

           10,20d

           set nu

           ! ls /etc  

       末行模式的功能是非常強大的。

   末行------>編輯模式

       ESC,ESC


下面詳解vim的用法:

一、打開文件

打開某個文件

   # vim /path/to/somefile

打開文件處於n行

   # vim  +n  (file)

打開時處於文件最後一行

   # vim  +   (file)

打開文件,定位到第一次被pattern匹配到的行

   # vim + /pattern  (file)


二、關閉文件

1.末行模式關閉文件

   :q :退出,不保存

   :wq:保存並退出

   :q! :不保存並退出

   :w!  :強行保存

   :wq ------>:x

2.編輯模式下退出

   ZZ  : 保存退出


三、移動光標(編輯模式)

1.逐字符移動:    

   h:

   l:

   j:

   k:

   還可以 使用數字+移動鍵  

   如 :  5h:

              6l:

2.逐單詞移動

   w  :移動到下一個單詞的詞首

   e  :跳至當前或下一個單詞的詞尾

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

   這些命令也都支持數字組合  

       如: 3w

                4e

3.行內跳轉

   0 :    絕對行首

   ^  :    行首的第一個非空白字符

   $ :     絕對行尾

4.行間跳轉

   #G  : 直接跳轉到第#行上

   G :表示最後一行


   末行模式下,直接給出行號也可跳轉。


四、翻屏

       Ctrl + f   :向下翻一屏

       Ctrl + b  :向上翻一屏


       Ctrl +d  : 向下翻半屏

       Ctrl + u :向上翻半屏


五、刪除單個字符

       x: 刪除光標所在處的當個字符

       #x : 刪除光標所在處及向後的共#個字符。


六、刪除命令:d

       d命令要跟跳轉命令組合使用

       #dw   , #de  ,#db


       dd:刪除當前光標所在行

       #dd:刪除包括光標所在行在內的#行


       末行模式下:

           StartADD,EndADDd

           如: .,+5d

                   d$ : 刪除到行尾

                   d0 : 刪除到行首

. (點)表示當前行

           $:最後一行

           +#:向下#行

           $-#: 倒數第幾行


七、粘貼命令 p

       p :如果刪除的或複製的內容爲整行,則粘貼至光標所在行的上方。如果如果刪除的或複製的內容爲非整行,則粘貼至光標至所在字符的前面。

       P :如果刪除的或複製的內容爲整行,則粘貼至光標所在行的下方。如果如果刪除的或複製的內容爲非整行,則粘貼至光標至所在字符的後面。


八、複製命令 y

       y的用法同d命令

       yy

       3yy

       1,100y

       y0

       y$


九、修改

   (先刪除內容,再轉換爲輸入模式的)

       c命令

       c的用法同d命令

           cc

           c$

十、替換

       r    只能用來替換單個字符

       R : 直接轉換爲替換模式

       ESC 退出替換模式


十一:撤銷編輯操作

       u:撤銷前一次操作

           可以連續撤銷操作,連續uuuuuu..   (內存中最多保存50次)

       #u :直接撤銷#次


      還原最近一次的撤銷操作  Ctrl + r


十二、重複前一次的編輯操作

. (點命令)


十三、可視化模式

v: 按字符選取

   V :按矩形塊選取

       可配合編輯操作實現多種操作。


十四、查找

   /pattern

   ?pattern

        下一個   n

        上一個  N


十五、查找並替換

   在末行模式下使用s命令

   addr1,addr2s@pattern@string@gi

1,$

% 表示全文


十六、使用vim編輯多個文件

   vim file1 file2

   文件切換:

   :next  切換至下一個文件

   :prev  切換至上一個文件

   :last  切換至最後一個文件

   :first 切換至第一個文件

   

   退出

   :qa 全部退出


十七、如何分屏顯示一個文件

   Ctrl+w,s 水平拆分窗口

   Ctrl+w,v 垂直拆分窗口


   在窗口間切換光標

   Ctrl+w ARROW(上下左右箭頭)

   :qa 關閉所有窗口


十八、分窗口編輯多個文件

   vim -o :水平分割顯示

   vim -O :垂直分割顯示


十九、將當前文件的部分內容另存爲另一個文件

   :w

   :addr1,addr2w /path/to/somewhere


二十、將另一個文件的內容填充在當前文件中

   :r /path/to/somefile  (類似sed中合併兩個文件)


二十一、跟shell交互

   :! command


二十二、高級話題

   1.顯示或取消顯示行號

       :set nummber

       :set nu

   

       :set nonu

   2.忽略或區分子字符大小寫

       :set ignorecase

       :set ic

       

       :set noic

   3.設定自動縮進

       :set autoindent

       :set ai


       :set noai

   

   4.查找到的文本高亮顯示或取消

       :set hlsearch

       :set nohlsearch


   5.語法高亮

     :syntax on

     :syntax off


二十三、配置文件 (讓功能默認有效)

/etc/vimrc    全局

~/.vimrc     僅對當前用戶有效


vimtutor 是linux系統上的一個教程。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章