vim從入門到精通

《vi編輯器》
1.查看文件內(nèi)容:cat、 head、 more、 less、 tail
2.行編輯工具:grep awk sed
3.全屏編輯工具:nano、vi、vim
4.注意:
vi和vim最大區(qū)別:vim有語法著色,會記錄上次退出時候的位置
一、vi是模式化工具
三種工作模式:
0.打開文件默認是編輯模式;
1.編輯模式(只能看,不能輸入內(nèi)容);
編輯模式->輸入模式:
i:在光標之前輸入內(nèi)容
I:將光標定位到行首,在行首插入數(shù)據(jù)
a:在光標之后位置寫入內(nèi)容
A:將光標定位到行尾,在行尾寫入內(nèi)容
o:在光標所在行下一行新開一行
O:在光標所在行上一行新開一行
2.輸入模式(可以在文件中輸入或刪除內(nèi)容);
輸入模式->編輯模式:
末行模式->編輯模式:
ESC
3.末行模式(可以執(zhí)行一些命令操作);
編輯模式->末行模式:
shift+:
(如:set nu、set ts=4)
二、常規(guī)操作
1.打開文件
vim +n file:打開文件,同時將光標定位到指定行首部
vim file:打開文件,同時將光標定位到首行首部
vim + file:打開文件,同時將光標定位到末行首部
2.關(guān)閉文件
2.1.編輯模式下關(guān)閉:
保存關(guān)閉:shift+z+z(快捷鍵)
2.2.末行模式下關(guān)閉:
q: 退出文件,僅僅退出沒有修改的文件
w:保存文件(原地保存)
w /path/:另存功能
q!:不保存強制退出,如果文件修改過,而且沒有保存(或不想保存)
wq:保存并退出
三、移動光標(編輯模式)
h (左) :n h
j (下):n j
k (上): n k
l(右):n l
逐詞移動:
n w:移動到下個單詞的首部
n b:移動到上個單詞的首部
四、行內(nèi)跳轉(zhuǎn)-(編輯模式)
0:跳轉(zhuǎn)到絕對行首
^:跳轉(zhuǎn)到相對行首
$:跳轉(zhuǎn)到行尾
五、行間跳轉(zhuǎn)-(編輯模式)
n G:跳轉(zhuǎn)到第n行
G:直接跳轉(zhuǎn)到最后一行
六、行間跳轉(zhuǎn)-(末行模式)
:n 到第n行
:$到末行
七、翻屏操作
ctrl +f下翻一屏
ctrl+b上翻一屏
ctrl+d下翻0.5屏
ctrl+u上翻0.5屏
八、刪除字符-編輯模式
n x 刪除n個字符
九、刪除行
n d 刪除n行
d$或D 刪除光標到行尾的內(nèi)容
d0 刪除光標到行首的內(nèi)容
dG 刪除光標所在行個后面所有行
十一、復(fù)制和剪切
dd 刪除光標所在行(剪切)或ndd
yy 復(fù)制光標所在行或nyy
十二、粘貼
p:粘貼光標所在行下一行
P:粘貼到光標所在行上一行
十三、替換
r替換一個字符
R
十四、撤銷
ctrl + r 撤銷撤銷操作(等同于widows中ctrl+y)
u撤銷操作(最多撤銷之前的50次)
十五、重復(fù)之前的操作
.
十六、查找內(nèi)容
/查找模式
/sea在文件中查找sea
n向下查找
N反向查找
十七、查找替換
:149,159 s/查找字符/替換字符/修飾符(g全局替換),表示將149-159行file 替換zk
如:
:149,159 s#file#zk#g
:% s/file/zk/g 表示全文檢索,將file替換成zk
十八、打開多文件
vim file1 file2
:next 顯示下一個文件
:prev 顯示上一個文件
:qa 同時退出多個文件
:first
:second
十九、分屏顯示兩個文件
vim -o file1 file2 上下分屏
vim -O file1 file2 左右分屏
ctrl+w 在兩個窗口之間切換
二十、從一個文件讀取內(nèi)容:末行模式
:r /path/file
二十一、在文件中執(zhí)行bash命令-末行模式
:! common
將命令執(zhí)行結(jié)果保存至打開文件中
:r ! ls
二十二、末行模式下特殊操作
set nu 行號
set nonu 無行號
set tapstop=4 縮進
set nohl 無高亮
start ,stop co dest 拷貝
start,stop d 刪除
start,stop m dest 移動