Linux vi/vim 中的一些技巧
阿新 • • 發佈:2021-06-28
今天來給大家介紹一下vim的技巧 |
以下命令在命令模式執行
i,a,r:在游標的前,後,上方插入字元命令(i=insert,a=append,r=replace) O,o:在當前行前面,後面插入一空行 cw,dw:改變(置換)/刪除游標所在處的單詞的命令 (c=change,d=delete) x,d$,dd:刪除游標處,游標之後,游標所在行的字元游標移動
k,j,h,l:分別上下左右移動游標 Ctrl+f,Ctrl+b:分別向下,向上翻頁 n:敲數字然後回車,游標往後移動 n 行 nG:使得游標跳動到指定行 w,b:使游標向前或向後跳過一個單詞 ma,mb,mc:游標移動到起始行,結束行,貼上行 w或W:游標右移一個字至字首 b或B:游標左移一個字至字首 e或E:游標右移一個字至字尾 (,):游標分別移至句首,句尾 {,}:游標分別移至段落開頭,結尾 H,M,L:游標移至螢幕頂行,中間行,最後行 0:(注意是數字零)游標移至當前行首 $:游標移至當前行尾
ndw 或 ndW:刪除游標處開始及其後的n-1個字 do:刪至行首 d$:刪至行尾 ndd:刪除當前行及其後n-1行 x 或 X:刪除一個字元,x刪除游標後的,而X刪除游標前的 Ctrl+u:刪除輸入方式下所輸入的文字 n1,n2 d:將n1行到n2行之間的內容刪除 %d:刪除全部內容 1,$d:刪除全部內容查詢
/abc:從游標開始處向檔案尾搜尋abc ?abc:從游標開始處向檔案首搜尋abc /\/abc:從游標開始處向檔案尾搜尋/abc,其中/是轉義 n:在同一方向重複上一次搜尋命令 N:在反方向上重複上一次搜尋命令替換
s/vivian/sky/:替換當前行第一個 vivian 為 sky s/vivian/sky/g:替換當前行所有 vivian 為 sky n,$s/vivian/sky/:替換第 n 行開始到最後一行中每一行的第一個 vivian 為 sky n,$s/vivian/sky/g:替換第 n 行開始到最後一行中每一行所有 vivian 為sky %s/vivian/sky/g:(等同於 g/vivian/s//sky/) 替換每一行的每一個 vivian 為 sky s#vivian/#sky/#:替換當前行第一個 vivian/ 為 sky/(可以使用 #或+作為分隔符,此時中間出現的 / 不會作為分隔符) s/p1/p2/g:將當前行中所有p1均用p2替代 n1,n2s/p1/p2/g:將第n1至n2行中所有p1均用p2替代 g/p1/s//p2/g:將檔案中所有p1均用p2替換
yy:複製當前行 nyy:複製當前行開始的n行 先按 v 然後方向鍵選擇區域,按 y 複製選中行 dd:剪切當前行 p(小):在當前游標處下面貼上內容。 P(大):在當前游標處上面貼上內容 n1,n2 co n3:將n1行到n2行之間的內容拷貝到第n3行下 n1,n2 m n3:將n1行到n2行之間的內容移至到第n3行下常用選項 編輯器選項
set number:顯示行號 set number!:不顯示行號,其它選項同理加!號 set all:列出所有選項設定情況 set ignorance:在搜尋中忽略大小寫 set list:顯示製表位(Ctrl+I)和行尾標誌($) set warn:在轉到別的檔案時若沒儲存當前檔案則顯示NO write資訊 set nowrapscan:禁止vi在搜尋到達檔案兩端時,又從另一端開始 set mesg:允許vi顯示其他使用者用write寫到自己終端上的資訊
:wq :儲存並退出 :q! :不儲存退出 :w :儲存更改 U:撤銷更改 Ctrl+r:重做,用於撤銷的更改恢復