| 模式 | 命令 | 操作 | 
 
  | 開始 | vim 文件路徑 | 打開|新建文件 | 
 
  | 命令模式 | i | 切換到輸入模式 | 
 
  | x | 刪除當前光標所在處的字符 | 
 
  | : | 切換到底線命令模式 | 
 
  | shift+zz | 保存并退出 | 
 
  | 移動光標的方法 | 
 
  | h|← | 左 | 
 
  | j|↓ | 下 | 
 
  | k|↑ | 上 | 
 
  | l|→ | 右 | 
 
  | [Ctrl] + [f] | =輸入模式下的page down | 
 
  | [Ctrl] + [b] | =輸入模式下的page on | 
 
  | [Ctrl] + [d] | 屏幕『向下』移動半頁 | 
 
  | [Ctrl] + [u] | 屏幕『向上』移動半頁 | 
 
  | + | 光標移動到非空格符的下一行 | 
 
  | - | 光標移動到非空格符的上一行 | 
 
  | n空格 | 光標會向右移動這一行的 n 個字符 | 
 
  | 0|Home | 移動到行首 | 
 
  | $|end | 移動到行尾 | 
 
  | H|M|L | 光標移動到這個屏幕的最上|中央|下方方那一行的第一個字符 | 
 
  | G | 移動到這個檔案的最后一行(常用) | 
 
  | nG | 移動到這個檔案的第 n 行 | 
 
  | gg | 移動到這個檔案的第一行,相當于 1G | 
 
  | n回車 | 光標向下移動 n 行(常用) | 
 
  | 搜索替換 | 
 
  | /word|?word | 向光標之下|上尋找一個名稱為 word 的字符串 | 
 
  | n | 代表重復(fù)前一個搜尋的動作 | 
 
  | N | 為『反向』進行前一個搜尋動作 | 
 
  | :n1,n2s/word1/word2/g | n1 與 n2 為數(shù)字。在第 n1 與 n2 行之間尋找 word1 這個字符串,并將該字符串取代為
  word2 !舉例來說,在 100 到 200 行之間搜尋 vbird 并取代為 VBIRD 則: 『:100,200s/vbird/VBIRD/g』。 | 
 
  | :1,$s/word1/word2/g | 從第一行到最后一行尋找 word1 字符串,并將該字符串取代為 word2
  !(常用) | 
 
  | :1,$s/word1/word2/gc | 從第一行到最后一行尋找 word1 字符串,并將該字符串取代為 word2
  !且在取代前顯示提示字符給用戶確認 (confirm) 是否需要取代!(常用) | 
 
  | 刪除、復(fù)制、粘貼 | 
 
  | x|X | 向后刪除|向前刪除 | 
 
  | nx | 向后刪除n個字符 | 
 
  | dd | 刪除游標所在一行 | 
 
  | ndd | 刪除光標所在的向下 n 行 | 
 
  | d1G | 刪除光標所在到第一行的所有數(shù)據(jù) | 
 
  | dG | 刪除光標所在到最后一行的所有數(shù)據(jù) | 
 
  | d$ | 刪除游標所在處,到該行的最后一個字符 | 
 
  | d0 | 刪除游標所在處,到該行的最前面一個字符 | 
 
  | yy | 復(fù)制游標所在的那一行(常用) | 
 
  | nyy | 復(fù)制光標所在的向下 n 行 | 
 
  | y1G | 復(fù)制游標所在行到第一行的所有數(shù)據(jù) | 
 
  | yG | 復(fù)制游標所在行到最后一行的所有數(shù)據(jù) | 
 
  | y0 | 復(fù)制光標所在的那個字符到該行行首的所有數(shù)據(jù) | 
 
  | y$ | 復(fù)制光標所在的那個字符到該行行尾的所有數(shù)據(jù) | 
 
  | p|P | 將已復(fù)制的數(shù)據(jù)在光標下|上一行貼上 | 
 
  | J | 將光標所在行與下一行的數(shù)據(jù)結(jié)合成同一行 | 
 
  | c | 重復(fù)刪除多個數(shù)據(jù),例如向下刪除 10 行,[ 10cj ] | 
 
  | u | 復(fù)原前一個動作。(常用) | 
 
  | [Ctrl]+r | 重做上一個動作。(常用) | 
 
  | . | 小數(shù)點:意思是重復(fù)前一個動作的意思 | 
 
  |   |   | 
 
  | 輸入模式 | 字符按鍵以及shift組合 | 輸入字符 | 
 
  | Enter | 回車|換行 | 
 
  | Back space | 退格鍵,刪除光標前一個字符 | 
 
  | Del | 刪除鍵,刪除光標后一個字符 | 
 
  | 方向鍵 | 移動光標 | 
 
  | Home|end | 移動到行首|行尾 | 
 
  | Page Up/Page Down | 上|下翻頁 | 
 
  | Insert  | 切換光標為輸入/替換模式,光標將變成豎線/下劃線 | 
 
  | ESC | 退出輸入模式,切換到命令模式 | 
 
  |   |   | 
 
  | 底線模式 | q | 退出 | 
 
  | w | 保存文件 | 
 
  | w! | 若文件屬性為『只讀』時,強制寫入該檔案(具體情況看權(quán)限) | 
 
  | X=wq | 保存并退出 | 
 
  | q! | 不保存退出 | 
 
  | ! | 強制退出(會有提示) | 
 
  | w [filename] | 將編輯的數(shù)據(jù)儲存成另一個檔案(類似另存新檔) | 
 
  | r [filename] | 在編輯的數(shù)據(jù)中,讀入另一個檔案的數(shù)據(jù)。亦即將
  『filename』 這個檔案內(nèi)容加到游標所在行后面 | 
 
  | n1,n2 w [filename] | 將 n1 到 n2 的內(nèi)容儲存成 filename 這個檔案 | 
 
  | ! command ?? | 暫時離開 vi 到指令行模式下執(zhí)行 command 的顯示結(jié)果!例如『:! ls /home』即可在 vi 當中察看 /home 底下以 ls 輸出的檔案信息!
 | 
 
  | set nu | 顯示行號 | 
 
  | set nonu | 不顯示行號 |