從命令模式到插入模式的幾種方法
i 光標不移動
I 光標移動到光標所在行首
a 光標往后移動一個字符
A 光標移動到光標所在行尾
o 光標所在行下新增一行
O 光標所在行上新增一行
- 擴展模式:
:q 退出
:q! 強制退出,丟棄做出的修改
:wq 保存退出
:x 保存退出
:wq! 對只讀文件強行修改保存?
:r file 把文件內容讀入到當前文件中
:w file 把文件存入另一個文件中
:! com在不退出的情況下執行命令
:r! com 把命令的結果讀入到當前文件中
:2 具體第2行
:2,10 第2行到第10行
刪除第5行到第7行
:5,+2 第5行到第7行
. 表示當前行
$ 表示最后一行
:. , $ d 從當前行刪除到最后一行
% 全文 = 1,$
- 命令模式
ZZ: 保存退出
ZQ:不保存退出
h向左j向下k向上l向右
數字3+h 向左移動3個字符
w:下一個單詞的詞首
e:當前或下一單詞的詞尾
b:當前或前一個單詞的詞首
數字3+w 向下跳3個單詞
H:當前頁頁首
M:當前頁頁中間行
L:當前頁頁底
^: 跳轉至行首的第一個非空白字符
0: 跳轉至行首
$: 跳轉至行尾
G:最后一行
1G, gg: 第一行
10G:跳到第10行
先輸入:到擴展模式,輸入20回車就在20行。
):下一句
(:上一句
}:下一段
{:上一段
Ctrl+f: 向文件尾部翻一屏 ?
Ctrl+b: 向文件首部翻一屏 ?
Ctrl+d: 向文件尾部翻半屏 ?
Ctrl+u:向文件首部翻半屏
x: 刪除光標處的字符
數字10+x:一次刪除10個字符
xp:交換光標所在處的字符及其后面字符的位置
~:轉換大小寫
J:刪除當前行后的換行符
r:替換光標所在處的字符,光標放在想要替換的字符上按r在按想要替換的字符。
R:切換成REPLACE模式
d: 刪除命令,可結合光標跳轉字符,實現范圍刪除?
d$: 刪除到行尾
d^:刪除到非空行首
d0:刪除到行首
dw:刪除單個單詞
de: 刪除到下一個單詞的詞尾
db: 向前刪除一個單詞
dd:刪除整行
數字3+dd直接刪除3行
dG:從當前光標刪除到文件的最后一行
D:從當前光標位置一直刪除到行尾,留空行,等同于d$
y: 復制,行為相似于d命令
yy:復制行
數字3+yy: 復制3行 ?
Y: 復制整行
p:緩沖區存的如果為整行,則粘貼當前光標所在行的下方;否則,則粘貼 至當前光標所在處的后面
P:緩沖區存的如果為整行,則粘貼當前光標所在行的上方;否則,則粘貼 至當前光標所在處的前面
c:刪除后進入插入模式。
100iwang [ESC] 粘貼“wang”100次
gggUG 從行首到行尾全部變成大寫字母
10Ggu20G 第10行到第20行變成小寫字母
u撤銷最近的更改
數字3+u撤銷之前的3次更改
ctrl r取消之前的撤銷
.重復前一次操作
數字3+.重復前一個3次操作
U 撤消光標落在這行后所有此行的更改(光標不移動到其他地方)
vim –b binaryfile 以二進制的方式打開文件
擴展命令模式下,利用xxd命令轉換為可讀的十六進制? :%!xxd ?
編輯二進制文件 ?
擴展命令模式下,利用xxd命令轉換回二進制? :%!xxd –r ?保存退出
v面向字符? V 面向行? ctrl-v 面向塊
>> ,<<可以實現首行縮進
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/104544