模式切換的指令:
鍵
進入模式
說明
<ESC>
指令模式
(從編輯模式傳回指令模式)
按 i,a, o “插入” 編輯模式
(在目前光标前開始插入)
i :在光标前插入 I 光标所在行的行首開始插入
a:在光标後開始插入 A:在本行末開始插入
o:在光标所在行下另起一行插入 O:在光标上插入新行
在指令模式下不要按其它鍵。指令模式下還有更多的指令和模式!
指令行模式下的定位指令:
h: 左移一個字元 j:下移一個字元 k:上移一個字元 l:右移一個字元
$: 移至行尾 0; 移至行首
enter: 移至下行行首
H: 移至到螢幕的上端
M: 移至到螢幕的中端
L: 移至到螢幕的下端
:2 直接到第二行行首
:setnu 設定行号
:setnonu 取消行号
想要vi打開任何檔案都有行号 可以編輯#vi .vimrc 預設檔案是不存在的 G: 移至打最後一頁的最後一行
可以2G: 一直到第二行的行首 。。。。
複制,删除,剪切和粘貼(在指令模式下):
x:删除光标所在的字元
X:删除光标前面的字元
dd:删除光标所在的行
dG:删除光标所在行到末尾(說白了就是光标以下行全删除)
D:删除光标所在行 到結尾
:nd
yy, Y 複制目前行
nyy,nY 複制目前行以下n行包括目前行
p 将已經選擇複制或被删除的行放到目前行下 (粘貼)
dd+p: 說白了就是剪切
指令行模式替換和取消的指令
r:取消光标所在處的字元
R:從光标所在處開始替換字元,(說白了就是覆寫)按esc退出
s:替換光标所在出字元,(說白了就是删除光标所在字元)并進入文本輸入方式
S:替換光标所在全行,和删除目前行差不多,并進入輸入模式esc退出
u:取消上一步的操作,ctrl+r取消 取消的操作
U:取消對光标所在行的操作
儲存和退出(從指令模式):
:w 寫入(=存入)
:w filename 寫入檔案名為“filename”的指定檔案
:x , wq 存入并退出
:q 退出(如果你不對你修改過的文本存盤,你将不會由此退出。)
:q! 退出不論是否對文本進行了修改。(在你退出時你不會得到要你存盤的提 示。)
搜尋和替換指令:
/string ? string
n 在所選的字元上 向上移動
N 在所選的字元上 向下移動
:%s/old/new/g 替換搜尋到的字元
:%s/old/g 删除搜尋到的字元
:r 檔案名 讀取檔案
:w! 檔案名 将所在的檔案儲存為 ~~~ 名字自己起 ls 在檢視下
:! 作業系統的指令 執行操作 vi -o file1 file2 同時打開多個檔案
{橫向的}
ctrl +ww 在多個檔案之間切換
vi -o file1 file2 同時打開多個檔案 {縱向的}
ctrl +ww 在多個檔案之間切換