1、命令模式
1.1、移動光標操作
| 按鍵 | 效果 |
|---|---|
| h 或 ← | 光標向左移動一個字符 |
| j 或 ↓ | 光標向下移動一個字符 |
| k 或 ↑ | 光標向上移動一個字符 |
| l 或 → | 光標向右移動一個字符 |
| Ctrl 功能鍵 + f | 向下移動一頁,相當於 PgDn 功能鍵 |
| Ctrl 功能鍵 + b | 向上移動一頁,相當於 PgUp 功能鍵 |
| 0 | 注意 0 是數字
光標移動到所在行的第一個字符,相當於 Home 功能鍵 |
| $ | 光標移動到所在行的最後一個字符,相當於 End 功能鍵 |
| G | 光標移動到最後一行 |
| nG | 注意 n 是數字
光標移動到文件的第 n 行;該操作一般和“:set nu”配合使用(見本文 3.3 節) |
| gg | 光標移動到文件的第一行;相當於 1G |
| n<Enter> | 注意 n 是數字
光標向下移動 n 行 |
1.2、查找操作
| 按鍵 | 效果 |
|---|---|
| /word | 向下查找匹配 word 字符串的內容 |
| ?word | 向上查找匹配 word 字符串的內容 |
| n | n 是英文按鍵,表示重複正向執行上一個查找操作 |
| N | N 是英文按鍵,表示重複反向執行上一個查找操作 |
1.3、複製粘貼和刪除操作
| 按鍵 | 效果 |
|---|---|
| yy | 複製光標所在的那一行 |
| nyy | 注意 n 是數字
從光標所在行開始向下複製 n 行 |
| p | 粘貼已複製的數據到光標所在行的下一行 |
| x | 刪除光標所在(或選中)的字符,相當於 Del 功能鍵 |
| dd | 刪除光標所在的那一行 |
| ndd | 注意 n 是數字
從光標所在行開始向下刪除 n 行 |
| u | 撤銷前一個操作 |
| . | 重複前一個操作 |
提示:由上表可知,即使沒有切換到編輯模式,也可以在命令模式中修改文件內容。
因此,為了避免誤修改,從編輯模式切換回命令模式的做法是不可靠的,可靠的做法應該是先對文件進行備份。
1.4、區塊操作
| 按鍵 | 效果 |
|---|---|
| Ctrl 功能鍵 + v | 區塊選擇,將光標經過的地方,以長方形的形式反白選擇。 |
| y | 複製反白的區塊選擇 |
| p | 粘貼已複製的區塊到光標所在的後面 |
| d | 刪除反白的區塊選擇 |
注意:區塊操作是 vim 的特色功能。
2、編輯模式
| 按鍵 | 效果 |
|---|---|
| i | 從命令模式切換到編輯模式 |
| Esc 功能鍵 | 從編輯模式切換回命令模式 |
3、末行模式
3.1、替換操作
| 按鍵 | 效果 |
|---|---|
| :n1,n2s/word1/word2/g | 注意 n1 和 n2 是數字
從第 n1 行到第 n2 行,查找 word1 字符串,並替換為 word2 字符串 |
| :1,$s/word1/word2/g | 從第一行到最後一行,查找 word1 字符串,並替換為 word2 字符串 |
| :1,$s/word1/word2/gc | 從第一行到最後一行,查找 word1 字符串,並替換為 word2 字符串;
但在替換之前,需要用户確認(confirm)是否替換 |
3.2、保存和退出操作
| 按鍵 | 效果 |
|---|---|
| :w | 保存修改 |
| :q | 退出 vim;該操作只能在沒有修改(或修改已保存)的情況下有效 |
| :q! | 強行退出 vim;不想保存修改使用就使用該操作 |
| :wq | 保存修改並退出 vim |
| :w filename | 將編輯後的數據,保存名稱為 filename 的文件中;相當於另存為 |
3.3、環境設置操作
| 按鍵 | 效果 |
|---|---|
| :set nu | 顯示行號 |
| :set nonu | 不顯示行號 |
本文參考
【1】【鳥哥】【9.2.2 按鍵説明】【鳥哥的 Linux 私房菜】【2015-07-07】
【2】【鳥哥】【9.3.1 區塊選擇(Visual Block)】【鳥哥的 Linux 私房菜】【2015-07-07】