Linux(Ubuntu)常用命令(五)—— vim常用命令

vi/vim常用命令

  vim其實就是vi的升級版,vi裏的所有命令vim裏都可以用,一般使用來說幾乎沒什麼差別。

  注:本篇文章區分大小寫!

  

 

vi / vim三級模式的關係: 

命令行模式

  任何時候,不管用戶處於何種模式,只要按一下ESC鍵,即可使Vi進入命令模式;我們在shell環境(提示符爲$)下輸入啓動Vi命令,進入編輯器時,也是處於該模式下。在該模式下,用戶可以輸入各種合法的Vi命令,用於管理自己的文檔。此時從鍵盤上輸入的任何字符都被當做編輯命令來解釋,若輸入的字符是合法的Vi命令,則Vi在接受用戶命令之後完成相應的動作。但需注意的是,所輸入的命令並不在屏幕上顯示出來。若輸入的字符不是Vi的合法命令,Vi會響鈴報警。

編輯/插入/文本編輯模式

在命令模式下輸入插入命令i、附加命令a 、打開命令o、修改命令c、取代命令r或替換命令s都可以進入文本輸入模式。在該模式下,用戶輸入的任何字符都被Vi當做文件內容保存起來,並將其顯示在屏幕上。在文本輸入過程中,若想回到命令模式下,按鍵ESC即可。

末行模式

  末行模式也稱ex轉義模式。在命令模式下,用戶按“:”鍵即可進入末行模式下,此時Vi會在顯示窗口的最後一行(通常也是屏幕的最後一行)顯示一個“:”作爲末行模式的提示符,等待用戶輸入命令。多數文件管理命令都是在此模式下執行的(如把編輯緩衝區的內容寫到文件中等)。末行命令執行完後,Vi自動回到命令模式。

  

  ①:從命令模式進入到末行模式一般就是準備保存/不保存退出,輸入“:”自動跳到終端此頁的末尾。如圖

    

  ②:從末行模式到命令模式,“Esc”。

  ③:命令模式到編輯模式可以有多種,通常 press “ i ”。

  ④:編輯模式到命令模式,“Esc”。

vi / vim命令:

 vi [filename] :打開文件,若文件不存在則新建文件並打開。

插入內容:

     i: 插入光標前一個字符

    I: 插入行首

    a: 插入光標後一個字符

    A: 插入行未

    o: 向下新開一行,插入行首

    O: 向上新開一行,插入行首

移動光標:

     h: 左移

    j: 下移 

    k: 上移 

    l: 右移

    M: 光標移動到屏幕中間行 

    L: 光標移動到屏幕最後一行行首 

    G: 移動到指定行,行號 -G

    w: 向後一次移動一個字 

    b: 向前一次移動一個字

    {: 按段移動,上移 

    }: 按段移動,下移

    Ctrl+d: 向下翻半屏 

    Ctrl+u: 向上翻半屏
  
    Ctrl+f: 向下翻一屏 

    Ctrl+b: 向上翻一屏

    gg: 光標移動文件開頭 

    G: 光標移動到文件末尾

刪除命令:

    x: 刪除光標後一個字符,相當於 Del 

    X: 刪除光標前一個字符,相當於 Backspace

    dd: 刪除光標所在行,n dd 刪除指定的行數 

    D: 刪除光標後本行所有內容,包含光標所在字符 

    d0: 刪除光標前本行所有內容,不包含光標所在字符

    dw: 刪除光標開始位置的字,包含光標所在字符

撤銷命令:

    u: 一步一步撤銷 

    Ctrl+r: 反撤銷

重複命令:

    .: 重複上一次操作的命令

文本行移動:

   >>: 文本行右移 
  
   <<: 文本行左移    

複製粘貼:

    yy: 複製當前行,n yy 複製 n 行 

    p: 在光標所在位置向下新開闢一行,粘貼

可視模式:

   v: 按字符移動,選中文本 
  
   V: 按行移動,選中文本可視模式可以配合 d, y, >>, << 實現對文本塊的刪除,複製,左右移動

替換操作:

    r: 替換當前字符 

    R: 替換當前行光標後的字符

查找命令:

    /: str查找
    n: 下一個
    N:上一個

VI/VIM行號顯示:

   需要時啓用:

    在vim命令行模式下輸入  :set nu  取消顯示:在vim命令行模式下輸入:  set nonu

      永久自動顯示:

          終端:vim   ~/.vimrc  打開後是一個空文件,添加 set nu,保存退出,重新啓動vi/vim。

  替換命令(並不常用):

    把abc全部替換成123:     末行模式下,將當前文件中的所有abc替換成123  :%s/abc/123/g

    末行模式下,將第一行至第10行之間的abc替換成123    :1, 10s/abc/123/g

vi / vim的區別:

https://www.cnblogs.com/KiraEXA/p/5994078.html

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