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