vi 的兩種指令模式;
Command(指令)模式,用于輸入指令;
Insert(插入)模式,用于插入文本;
Visual(可視)模式,用于視化的的高亮并標明正文;
Command 模式是vi或vim的預設模式,如果我們處于其它指令模式時,要通過ESC鍵切換過來。
當我們按ESC鍵後,接着再輸入:号時,vi會在螢幕的最下方等待我們輸入指令;
檔案的儲存和退出
:w 儲存;
:w filename 另存為filename;
:wq! 儲存退出;
:wq! filename 注:以filename為檔案名儲存後退出;
:q! 不儲存退出;
:x 應該是儲存并退出 ,功能和:wq!相同
光标移動
j 向下移動一行;
k 向上移動一行;
h 向左移動一個字元;
l 向右移動一個字元;
插入模式(文本的插入)
i 在光标之前插入;
a 在光标之後插入;
I 在光标所在行的行首插入;
A 在光标所在行的行末插入;
o 在光标所在的行的上面插入一行;
O 在光标所在的行的下面插入一行;
s 删除光标後的一個字元,然後進入插入模式;
S 删除光标所在的行,然後進入插入模式;
文本内容的删除操作
x 一個字元;
#x 删除幾個字元,#表示數字,比如3x;
dw 删除一個單詞;
#dw 删除幾個單詞,#用數字表示,比如3dw表示删除三個單詞;
dd 删除一行;
#dd 删除多個行,#代表數字,比如3dd 表示删除光标行及光标的下兩行;
恢複修改及恢複删除操作;
u 撤消修改或删除操作;
查找
/SEARCH 注:正向查找,按n鍵把光标移動到下一個符合條件的地方;
?SEARCH 注:反向查找,按shift+n 鍵,把光标移動到下一個符合條件的
替換
:s /SEARCH/REPLACE/g 注:把目前光标所處的行中的SEARCH單詞,替換成REPLACE,并把所有SEARCH高亮顯示;
:%s /SEARCH/REPLACE 注:把文檔中所有SEARCH替換成REPLACE;
:#,# s /SEARCH/REPLACE/g 注:#号表示數字,表示從多少行到多少行,把SEARCH替換成REPLACE;