vim常用命令表
命令模式 | 光標移動 |
h或向左方向鍵 | 光標向左移動一個字符 |
j或向下方向鍵 | 光標向下移動一個字符 |
k或向上方向鍵 | 光標向上移動一個字符 |
l或向右方向鍵 | 光標向右移動一個字符 |
Ctrl+f | 屏幕向前翻一頁(常用) |
Ctrl+b | 屏幕向后翻一頁(常用) |
Ctrl+d | 屏幕向前翻半頁 |
Ctrl+u | 屏幕向前翻半頁 |
+ | 光標移動到非空格符的下一列 |
- | 光標移動到非空格符的上一列 |
n<space> | 按下數字后再按空格鍵,光標會向右移動這一行的n個字符。例如20<space>,則光標會向右移動20個字符 |
0(HOME) | (是數字0)動到這一行的第一個字符處(常用) |
$(END) | 移動到這一行的最后一個字符處(常用) |
H | 光標移動到這個屏幕最上方的那一行 |
M | 光標移動到這個屏幕中央的那一行 |
L | 光標移動到這個屏幕最下方的那一行 |
G | 光標移動到文件的最后一行 |
nG | 移動到這個文件的第n行。例如20G,則會移動到這個文件的第20行(可配合:set nu) |
n<Enter> | 光標向下移動n行(常用) |
命令模式 | 查找與替換 |
/word | 在光標之后查找一個名為word的字符串(常用) |
?word | 在光標之前查找一個名為word的字符串 |
:n1,n2s/word1/word2/g | 在第n1與n2行之間查找word1這個字符串,并將該字符串替換為word2(常用) |
:1,$s/ word1/word2/g | 在第一行與最后一行之間查找word1這個字符串,并將該字符串替換為word2(常用) |
:1,$s/ word1/word2/gc | 在第一行與最后一行之間查找word1這個字符串,并將該字符串替換為word2,且在替換前顯示提示符讓用戶確認(conform)(常用) |
一般模式 | 刪除、復制與粘貼 |
x,X | X為向后刪除一個字符,X為向前刪除一個字符(常用) |
Nx | 向后刪除n個字符 |
Dd | 刪除光標所在的那一整行(常用) |
Ndd | 刪除光標所在列的向下n列,例如,20dd則事刪除20列(常用) |
d1G | 刪除光標所在行到第一行的所有數據 |
dG | 刪除光標所在列到最后一行的所有數據 |
Yy | 復制光標所在行(常用) |
Nyy | 復制光標所在列的向下n列,例如,20yy則是復制20列(常用) |
y1G | 復制光標所在列到第一列的所有數據 |
yG | 復制光標所在列到最后一列的所有數據 |
p,P | p為復制的數據粘貼在光標下一列,P則為粘貼在光標上一列(常用) |
J | 將光標所在列與下一列的數據結合成一列 |
U | 恢復前一個動作(undo) |
編輯模式 | |
i,I | 插入:在當前光標所在處插入輸入的文字,已存在 |
a,A | 添加:由當前光標所在處的下一個字符開始輸入,已存在的字符會向后退(常用) |
o,O | 插入新的一行:從光標所在行的下一行行首開始輸入字符(常用) |
r,R | 替換:r會替換光標所指的那一個字符;R會一直替換光標所指的文字,直到按下Esc為止(常用) |
Esc | 退出編輯模式,回到一般模式(常用) |
命令行模式 | |
:w | 將編輯的數據寫入硬盤文件中(常用) |
:w! | 若文件屬性為只讀,強制寫入該文件 |
:q | 退出vi(常用),快捷方式為SHIFT+ZZ |
:q! | 若曾修改過文件,又不想保存,使用!為強制退出不保存文件,快捷方式為SHIFT+ZQ |
:wq | 保存后退出,若為:wq!,則為強制保存后退出(常用) |
:w[filename] | 將編輯數據保存為另一個文件(類似另存新文檔) |
:r[filename] | 在編輯的數據中,讀入另一個文件的數據。即將filename這個文件內容加到光標所在行的后面 |
:set nu | 顯示行號,設定之后,會在每一行的前面顯示該行的行號 |
:set nonu | 與ser nu相反,為取消行號 |
:set nohlsearch | 可取消高亮,可編輯/etc/vimrc來編輯取消所有高亮 |
n1,n2 w[filename] | 將n1到n2的內容保存為filename這個文件聚 |
例:
轉載于:https://blog.51cto.com/zlong37/1401656
總結
- 上一篇: 【HDOJ】1597 find the
- 下一篇: WF4.0 基础篇 (二十九) Work