Linux Vim使用技巧【簡】

vim編輯器是vi編輯器的強化版,其功能比vi更大強大,是Linux終端下使用最爲頻繁地一種編輯工具,也是開源世界中尤其神奇的一個編輯器,號稱“編輯器之神”。


vi:全名 Visual Interface;  vim:全名VI  iMproved.  它們都是全屏化、模式化編輯器。

vim有三種使用模式:命令模式、輸入模式(編輯模式)、末行模式

    命令模式:使用鍵盤命令的模式,進行文本內容的編輯。

    輸入模式(編輯模式):在文本狀態下,進行文本內容的編輯。

    末行模式:在末行狀態下,進行文本內容的編輯。

模式轉換:

    命令模式——>輸入模式:

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

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

        o:在當前光標字符的下方,新建一行,並進入輸入模式

        I:當前光標跳轉至行首,轉換爲輸入模式

        A:當前光標跳轉至行尾,轉換爲輸入模式

        O:在當前光標字符的上方,新建一行,並進入輸入模式

    輸入模式——>命令模式:

        ESC

    命令模式——>末行模式:

        :

    末行模式——>命令模式:

        ESC,ESC

vim基本操作技巧:

一、打開單個文件
    vim file:  直接打開文件
    vim + file:打開文件並跳至最後一行
    vim +# file:打開文件並跳至第#行
    vim +/PATTERN:打開文件並跳轉至第一次被模式PATTERN匹配到的行的行首


二、關閉文件
末行模式下:
     :q  關閉文件但不保存
     :w  保存文件
     :wq 保存並關閉文件
     :x   保存並關閉文件


     :q! 強制關閉文件但不保存
     :wq!  強制保存並關閉文件
     :x!  強制保存並關閉文件

命令模式下:
     ZZ :保存並退出

三、移動光標
1.逐字符移動
    h:左移一個字符
    l:右移一個字符
    j:向下移一行
    k:向上移一行

2.以單詞爲單位移動
    w:移動到下一個單詞的行首
    e:移動到下一個單詞的行尾
    b:移動到上一個單詞的行首

3.行內跳轉
    0:跳轉至絕對行首
    ^:跳轉至相對行首,即行首的第一個字符所在處
    $:跳轉到行尾

4.行間跳轉

    命令模式下:
        G:跳轉到最後一行
        #G:跳轉到第#行

    末行模式下:
        :$ 跳轉至最後一行
        :#   跳轉到第#行

四、翻屏顯示
    Ctrl+f:向下翻一屏  ## f:front
    Ctrl+b:向上翻一屏  ## b:back
    
    Ctrl+d:向下翻半屏  ## d:down
    Ctrl+u:向上翻半屏  ## u:up
    
五、刪除
    命令模式:
        刪除字符
:
            x:刪除光標所在處的字符
            #x:刪除光標所在處及之後的#個字符
        
        刪除單詞:  ##    d:delete
            #dw:刪除從當前光標字符開始到#個單詞之後的行首處之間的單詞
            #de:刪除從當前光標字符開始到#個單詞之後的行尾處之間的單詞
            #db:刪除從當前光標字符開始到#個單詞之前的行首處之間的單詞
        
        刪除行
            dd:刪除當前光標字符所在行
            #dd:刪除當前行在內向後的#行

    末行模式:
        :StartADD,EndADDd
            .: 表示當前行
            $: 最後一行
            +#: 向下的#行
            -#: 向上的#行

六、複製
    複製單詞 ##    y:copy
        y:用法同d命令
    
    複製行
        yy:複製當前行
        #yy:複製當前行在內向後的#行
        
七、黏貼
    ##    p/P:paste
        小p:黏貼到當前光標所在處之後,或者下方
        大P:黏貼到當前光標所在處之前,或者上方

        
八、修改

   實質是在要修改的位置先刪除,後插入     ## c:change
        c:用法同d命令
        
九、替換
    ##    r/R:replace
    r:用法同d命令,在命令模式下直接替換
    R:進入輸入模式,並替換

    
十、撤銷命令模式下的操作

    u:撤銷上一次的操作
    #u:撤銷前#次的操作
    
    Ctrl+r:恢復最近一次撤銷操作
    
十一、重複上一次命令模式下的操作
    命令模式下:.
    
十二、可視化模式

    v:按字符選取
    V:按矩形選取

    
十三、查找
    查找:
        末行模式下:
            /PATTERN:順序查找,從前往後查找
            ?PATTERN:逆序查找,從後往前查找
            n:向後移動到下一個PATTERN處             
            N:向前移動到上一個PATTERN處
    查找並替換:      

           在末行模式下使用s命令

           ADDR1,ADDR2s@PATTERN@string@gi

           1,$

            %:表示全文


十四、同時編輯多個文件
    vim file1 file2 file3
    切換:
        :next 跳轉到下一個文件
        :prev 跳轉到上一個文件
        :first 跳轉到第一個文件
        :last 跳轉到最後一個文件
        
    分屏顯示:    ##    w:windows     
        Ctrl+w,s 水平顯示多個文件    ##    s:Simultaneous 平行的
        Ctrl+w,v 垂直顯示多個文件    ##    v:Vertical    垂直的
        Ctrl+w,c 關閉分屏顯示        ##    c:Close
        
    分窗口編輯:
        vim -o:水平分割顯示
        vim -O:垂直分割顯示
        
    另存爲:
        :w /path/to/anotherfile
        :StartLine EndLinew /path/to/anotherfile
    
    在當前文件中引入另一文件內容:
        :r /path/to/file
    
十五、與shell交互
    :!COMMAND

十六、顯示設置
    顯示/隱藏行號:
        :set number    或 :set nu
        :set nonu
    忽略/區分字符大小寫:
        :set ignorecase    或    :set ic
        :set noic
    打開/關閉自動縮進:
        :setautoindent    或    :set ai
        :set noai
    打開/關閉查找到的單詞高亮顯示:
        :set hlsearch
        :set nohlsearch
    打開/關閉語法高亮:
        :syntax on
        :syntax off
    
十七、配置文件
    /etc/vimrc
    ~/.vimrc

    
   

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