vim的基本使用方法

2021-08-19 19:51:07 字數 3345 閱讀 9542

頭記:vim作為被大多數程式設計師所推崇的編輯器,是源於它的自由靈活以及令人舒服的輸入模式,但對於新手來說無疑是個噩夢(需要記太多的命令),

而作為使用了vim有一段時間的我來說,總結下常用的命令,以備新手快速進入vim,感受它的強大以及令人著迷的處理方式。

以下只介紹常用的使用方式,對於繁重的概念以及高難度的操作留待大家以後的興趣去探索。

初次用vi/vim開啟檔案既可以使用以下命令:

移動命令:

1.hjkl 四個按鍵對應左下上右,這四個按鍵是用來移動游標(同上下左右方向鍵),可以和數字組合使用如:nh(向左移動n步),其它方向同樣。

2.wb 這兩個按鍵是我最常使用的,分別代表向右向左移動乙個單詞的長度

3.gg 和 g 其中gg是移動到第一行,g移動到最後一行。

4.ng 移動到第n行。

還有很多的移動命令如:h l ...

插入文字:

1.iao 這三個按鍵對應這三種不同的插入方式,i在游標前插入(預設游標為方塊),a則是在游標後插入,o為新起一行並進入插入模式.還有其它的如:o向游標的上面插入新行並進入插入模式.

按esc可以進行移動命令

選擇文字:

1.v按v進入選取模式從當前游標開始,之後移動游標即可進行選取。

2.v按v直接選取一行,後續步驟同上。

3.ctrl + v 這個可以說是vi中非常好用的選取器了,可以進行塊選擇,後續同樣可以使用hjkl或者wb來進行塊的選取。

文字的剪貼,複製,貼上以及撤銷:

1.對上邊選擇的文字可以使用d剪貼,y複製

2.dd 剪貼當前行也可以使用ndd剪貼從當前開始的n行。

3.yy 複製當前行,也可以使用nyy 同上。

4.p 貼上剪貼的內容或者複製的內容,一般會保留原格式貼上,即用dd或者yy則貼上到下一行,進行文字區域性選取貼上會在當前行。

5.p 向上貼上,格式同上。

6.u 撤銷上一次操作。ctrl + r 與u操作相反。

相對高階一點的複製和貼上:(但是非常有用)

vi/vim中內建有很多的暫存器,供分別使用.

1. "ayy 儲存當前行在a暫存器中,"anyy 複製n行到a暫存器或者"any 按回車。暫存器從a-z,0-9非常之多。

2. +這兩個暫存器為系統剪貼簿,可以複製內容到剪貼簿供外邊使用,使用同上如:"+yy。

3."ap 貼上a暫存器中的內容,其它的也一樣。

搜尋模式:

1. / 向下搜尋 如: /test 搜尋test 可以使用vim中的正則,使用n移動到下乙個搜尋到的詞,n移動到上乙個搜尋到的詞。

2. ? 同上,只是使用n是向上搜尋,n向下。

加入書籤:

1.m 如:mk在當前行加入標籤k 使用`k(注意是esc下的`)跳到k標記處。

命令模式:

可以說命令模式是vim的核心了,至少我現在使用時就是這種感覺。

(後續匹配文字都可以使用vim中的正則進行選定,這裡不介紹,以免增加使用難度,不過建議好好了解下正則)

1. :%g/需要匹配的內容/d 這條命令刪除整個檔案中匹配到內容的所有行,其中%號代表的是進行全文本匹配,也可以使用g//d表示從n開始到m結束,n與m都可以省略,預設即從當前行開始。

2. :s/需要匹配的文字/替換的文字/g 這條命令用來進行替換匹配到的文字,方法同上。

3. :s/\(匹配到的文字\)/插入的內容\0/g 這條命令與前邊命令不同之處在於用()把需要匹配的文字括起來,後邊則可以使用\0進行還原,實現插入操作,如分別括起來多個,則可以使用\1以此類推。

4. :!cd /home 這條命令的意思是呼叫linux系統下bash中的cd命令,並切換到家目錄,可以使用:!ls -l顯示當前工作目錄下的檔案資訊。

5. :reg 檢視vim中暫存器的內容,可以隨時檢視暫存器中的內容。

5 :h 調出幫助檔案,非常有用。

文字檔案的儲存:

1. :w 修改的內容寫入原檔案(vim編輯時會生成.swap臨時檔案)。

2. :q 退出而不儲存。

3. :wq 儲存並退出。

4. :w! 強制寫入,退出命令也可以使用。

5. :x 如果有改變則寫入,否則退出。(最常使用)

vi多屏:

1. :sp 以橫屏的模式顯示另外乙個檔案。:vsp 以豎屏的方式顯示。:ex 切換到其它檔案當前檔案消失。

2. ctrl+w 在兩個檔案切換。

vi合併其它檔案:

1. :r path 把path檔案追加到游標後。

附上vim替換操作以及正則:

一、正規表示式:

替換命令: s///g 下邊的命令可以組合起來使用

無 : 只對指定範圍內的第乙個匹配項進行替換

g : 對指定範圍內的所有匹配項進行替換

c : 在替換前請求使用者確認

e : 忽略執行過程中的錯誤

二、元字元:

. : 匹配任意乙個字元

[abc] : 匹配方括號中的任意乙個字元。可以使用-表示字元範圍。

[^abc] : 在方括號內開頭使用^符號,表示匹配除方括號中字元之外的任意字元。

\d : 匹配阿拉伯數字,等同於[0-9]

\d : 匹配阿拉伯數字之外的任意字元,等同於[^0-9]

\x : 匹配十六進製制數字,等同於[0-9a-fa-f]

\x : 匹配十六進製制數字之外的任意字元,等同於[^[0-9a-fa-f]

\w : 匹配單詞字母,等同於[0-9a-za-z]

\w : 匹配單詞字母之外的任意字元,等同於[^0-9a-za-z]

\t : 匹配字元

\s : 匹配空白字元,等同於[ \t]

\s : 匹配非空白字元,等同於[^ \t]

*特別注意:如果需要查詢元字元則需要\跳出

表示數量的元字元

* : 匹配0-任意個

\+ : 匹配1-任意個

\? : 匹配0-1個

\ : 匹配n-m個

\ : 匹配n個

\ : 匹配n-任意個

\ : 匹配0-m個

表示位置的符號

$ : 匹配行尾

^ : 匹配行首

\< : 匹配單詞詞首

\> : 匹配單詞詞尾

**自

VIM基本使用方法

vi有三種基本的工作模式 指令行模式 文字輸入模式 行末模式。他們的相互關係如所示。指令模式 command mode 下輸入 a i o進入文字輸入模式 input mode 文字輸入模式 input mode 下按esc進入指令模式 command mode 指令模式 command mode ...

vim 基本使用方法總結

1.插入模式 1 插入模式 按 i 切換進入插入模式 insert mode 按 i 進入插入模式後是從游標當前位置開始輸入檔案 按 a 進入插入模式後,是從目前游標所在位置的下乙個位置開始輸入文字 按 o 進入插入模式後,是插入新的一行,從行首開始輸入文字。2 從插入模式切換為命令列模式 按 es...

vim替換命令基本使用方法

vim用命令s替換檔案中的字元。s的使用如下 s str rep 替換當前行的第乙個str s為命令字元 是分隔符,主要意思是把當前行的第乙個str替換為rep 如果我們想替換更多str 字元,比如說替換當前行所有的str s str rep g 替換當前行的所有str 只需在最後加上g就可以替換當...