1. 程式人生 > 實用技巧 >vi/vim 的一些命令

vi/vim 的一些命令

基本上 vi/vim 共分為三種模式,

分別是命令模式(Command mode)輸入模式(Insert mode)底線命令模式(Last line mode)。

(1)命令模式

x,X                          x為向後刪除一個字元,X為先前刪除一個字元
nx(n代表數字)                 向後刪除n個字元
dd                           刪除當前行
D                            刪除當前行所有字元,試成為空行
ndd(n代表數字)                刪除游標所在行的向下n列
d1G                          刪除游標所在行到第一行的所有資料
dG                           刪除游標所在行到最後一行的所有資料
yy                           複製游標所在行
y1G                          複製游標所在行到第一行的所有資料
yG                           複製游標所在行到最後一行的所有資料
ynj(n代表數字)                複製游標所在行向下n+1行
dnj(n代表數字)                刪除游標所在行向下n+1行
p,P                          p為複製的資料貼上在游標的下一行,P為複製的資料貼上在游標的上一行
J                            將游標所在行與下一行的資料結合成一行
u                            恢復前一個動作(undo)
h                            游標向左移一個字元
j                            游標向下移一個字元
k                            游標向上移一個字元
l                            游標向右移一個字元
Ctrl+f                       螢幕向下翻一頁
Ctrl+b                       螢幕向上翻一頁
Ctrl+d                       螢幕向下翻半頁
Ctrl+u                       螢幕向上翻半頁
+                            游標移動到下一行的第一個非空字元
-                            游標移動到當前行的第一個非空字元
n空格(n代表數字)               游標向當前行向右移動n個字元
0(數字0)                      游標移動到當前行的第一個字元(可以為空字元,注意與-區分)
$                            游標移動到當前行的最後一個字元(可以為空字元,注意與-區分)
H                            游標移動到當前螢幕最上方的那一行的第一個非空字元
M                            游標移動到當前螢幕最中間那一行的第一個非空字元
L                            游標移動到當前螢幕最下方的那一行的第一個非空字元
G                            游標移動到該文章最後一行的第一個非空字元
nG(n代表數字)                 游標移動到該文章第n行的第一個非空字元
n                            游標從當前行向下移動n行的第一個非空字元

(2)輸入模式

1. a //進入到當前游標後開始編輯
2. A //進入到當前游標所在行的行末開始編輯
3. i //進入當前游標位置開始編輯
4. I //進入當前游標所在行的行頭開始編輯
5. o //進入當前游標下一行開始編輯
6. O //進入當前游標上一行開始編輯
命令模式切換到末行模式
1. : //對文字的設定或儲存工作
2. / //對文字進行全文向下搜尋字串 string
3. ? //對文字進行全文向上搜尋字串 string

(3)底線命令模式 

1. :w //儲存文字
2. :q //退出編輯
3. :wq //儲存並退出
4. :q! //強制退出
5. :w newfile //另存為
6. :set nu //顯示行號
7. :set nonu //取消行號
8. : set hlsearch //設定高亮搜尋
9. : set nohlsearch //取消高亮搜尋
10. : n,m s/oldstring/newstring //替換整個文字每行的第一個 oldstring
11. :n, m s/oldstring/newstirng/g //替換整個文字所有的 oldstring
12. /string //向下搜尋 string
13. ?string //向上搜尋 string

  


此圖轉載自:https://www.cnblogs.com/Jimc/p/10213914.html