啟動和關閉vim
vi 打開
vi/vim
打開 vi/vim 并加載檔案 <file>
vi <file>
zq 無條件退出
:q! 無條件退出
zz 存盤并退出
:wq 存盤并退出
vim編輯器的三種模式:一般模式、編輯模式和指令行模式
在一般模式中可以進行删除、複制和粘貼的功能,但是無法編輯檔案内容。
從一般模式切換到編輯模式可以按下i、i、o、o、a、a、r、r鍵。
注意區分目前是insert還是replace模式!
i: 插入,從目前光标所在之處插入所輸入的文字。
a: 增加,目前光标所在的下一個字開始輸入文字。
o: 插入新的一行,從行首開始輸入文字。
按下esc鍵可以回到一般模式。
在一般模式中輸入:、/、?三個中的任意一個可以将光标移到最下面的一行。
在這個模式中可以提供查找資料的操作,而讀取、儲存、大量替換字元、離開vii、顯示行号等操作則是在此模式中完成的。
需要注意的是,編輯模式與指令行模式之間是不能互相切換的。進入vim之後是處于“command mode”下,要切換到insert mode才能輸入文字。初次用vi的使用者都會想先用上下左右鍵移動光标,結果電腦一直提示,是以進入vi後,先不要亂動,轉換入insert後再說。
移動光标的方法:
[ctrl]+[f]:螢幕向下移動一頁,相當于[pagedown]按鍵。
[ctrl]+[b]:螢幕向上移動一頁,相當于[pageup]按鍵。
0或功能鍵[home]:移動到這一行的最前面字元處。
$或功能鍵[end]:移動到這一行的最後面字元處。
g:移動到這個檔案的最後一行。
gg:移動到這個檔案的第一行,相當于1g.
n[enter]:n為數字,光标向下移動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.且在替換前顯示提示字元給使用者确認是否需要替換。
删除、複制和粘貼:
x,x:在一行字中,x為向後删除一個字元(相當于[del]鍵),x為向前删除一個字元(相當于[backspace])。
dd:删除光标所在的一整行。
ndd:删除光标所在的向下n行。
yy:複制光标所在的一行。
nyy:複制光标所在的向下n行。
p,p:p為将已複制的内容在光标的下一行粘貼,p則為粘貼在光标的上一行。
u:複原前一個操作。
[ctrl]+r:重做上一個操作。
.:小數點,重複前一個操作。
一般模式切換到編輯模式:
i,i:進入插入模式,i為從目前光标所在處插入。i為在目前所在行的第一個非空格字元處開始插入。
a,a:進入插入模式。a為從目前光标所在處的下一個字元處開始插入。a為從所在行的最後一個字元處開始插入。
o,o:進入插入模式。o為在下一行插入。o為在上一行插入。
r,r:進入替換模式。r隻替換光标所在那個字元一次。r會一直替換光标所在字元,直到按下esc鍵。
一般模式切換到指令行:
:w:将編輯的資料寫入到硬碟中。
:q:離開vi.後面加!為強制離開。
:wq:儲存後離開。:wq!為強制儲存後離開。