一文搞定Vim Vi編輯器

2021-10-06 09:44:36 字數 3623 閱讀 1998

1.vi/vim的工作模式介紹

2.命令模式

3.輸入模式

4.底線命令模式

命令模式:利用vi/vim [已經存在的檔案或不存在的檔案]就會預設的進入命令模式

輸入模式不可以和底線命令模式相互轉換

2.1 在命令模式下的常用指令

指令作用

h游標左移

j游標上移

k游標下移

l游標右移

0游標移動到本行行首

$游標移動到本行行尾

gg移動到檔案的頭處

g移動到檔案最後一行的開頭

n+g跳轉n行

x刪除游標前邊的乙個字元

n+x刪除

x刪除游標後邊乙個字元

dw(注意把游標移動到單詞的詞頭)刪除乙個單詞

d0刪除本行游標前面的資料

d(或者d加shift4)

刪除本行游標後邊的資料

dd刪除當前游標所在行

n1,n2dd

刪除指定範圍內的行數

n+dd

刪除從本行開始的n行u撤銷

ctrl+r反撤銷

yy複製游標本行內容

n+yy

複製從本行開始後邊的n行

p貼上到游標的所在行(如果本行有內容那麼把內容下移一行)

p貼上到游標所在的小一行(如果下一行有內容那麼把下一行再往下移動一行)

r游標覆蓋的字元可以更改(只是乙個字元)

k(游標放在該字串上):可以查詢函式等再man裡邊的內容

<<

向左縮排(前面可以跟數字)

>>

向右縮排(前面可以加數字)

d+g刪除游標所在行一下的全部內容

命令模式下所有的刪除操作都可以看成剪下,比如我們用x進行剪下,那麼p就可以貼上剛才刪除的內容

2.2 在命令模式下的查詢指令

指令作用

/+字串

查詢指定字串內容

?+字串

查詢指定字串內容

#選定指定的字串

三種查詢方式都可以使用n/n進行遍歷

2.2 在命令模式下的視覺化

在命令模式下輸入v進入視覺化,進入視覺化後的指令:

指令作用

y進入視覺化操作後的複製

d進入視覺化操作的刪除

p把複製的文字放在游標所在的位置

p把複製的文字放在游標所覆蓋單詞後邊

進入輸入模式的方式:

指令作用

a在游標覆蓋的字元的後邊進行插入

a把游標移動到本行尾部插入

i在游標覆蓋字元前面插入

i把游標移動到本行的頭部進行插入

o在游標所處行的下一行開闢新的一行進行插入

o在游標所處位置的上面一行進行插入

s刪除游標所覆蓋的字元進行插入

s刪除本行所有的字元再重新編輯本行

4.1進出底線命令模式

1.輸入:進入底線命令模式

2.以回車退出底線命令模式

4.2底線命令模式的字串的替換

格式作用

s/需要替換的字串/新的字串

只能替換游標所在行的第乙個需要替換的字串

s/需要替換的字串/新的字串+/g

替換所有游標所在行指定需要替換的字串

數字+,+數字+s/需要替換的字串/新的字串+/g

替換兩個數字之間的所有行數需要替換的字串

4.2底線命令模式的儲存退出

指令作用

q不儲存退出

w儲存修改

wq儲存修改並退出

zz儲存修改並退出(快捷鍵)

wq!儲存修改並退出(檔案擁有者和root可以使用)

4.3底線模式的分屏

指令作用

sp為當前檔案水平分層(sp+其他檔案)

vsp+

垂直分屏(vsp+其他檔案)

ctrl+ww

在兩個螢幕之間切換

q分屏模式下退出游標所在的視窗

qall

分屏模式下把所有視窗都刪除掉

4.4底線命令模式的其他操作

1.r 指定檔名就可以把指定檔案的內容匯入進去

2.! +系統的命令:可以在不退出vi模式下使用系統命令

3.r !使用的指令:把當前使用者輸入指令的執行結果匯入vim所在檔案中

4.set nu:給開啟的文字加上行號

5.map 一系類指令:把一系列指令定義成快捷鍵

6.ab:意思是把a替換成b

對於第3個其實是我們前兩點的聯合,我們舉個例子,把ls的查詢結果匯入vim所處的檔案中

我們回車後,會把我們所查詢到的內容全部匯入vim所在檔案(從我們游標所在行開始新增)

10,text_ahr0chm6ly9ibg9nlmnzzg4ubmv0l3fxxzq1nzm3mdy4,size_16,color_ffffff,t_70)

我們把第5個命令舉乙個例子:

我們可以在命令模式下直接使用快捷鍵去注釋游標所在行,我們把ctrl+p作為這乙個快捷鍵,正常的操作,我們需要把游標移動到頭部並進入插入模式,即命令i,插入乙個#表示注釋,再然後按【esc】回到命令模式,那麼我們就可以這麼定義,即在命令列模式下輸入:map (ctrl+v+p或者ctrl+v和ctrl+p) i#

即(此時游標所在第二行):

我們回車後,在游標的任意一行都可以按下ctrl+p進行注釋的操作

我們設定快捷鍵的時候一定要有ctrl+v再加上我們需要設定的快捷鍵

關於第6點ab的意思是我們在底線命令列模式下可以設定字元的替換,比如我們把我們在檔案裡輸入的aa變成abccba,第一步,使用ab進行替換:

第二部在插入模式寫入aa

回車後

文字編輯器Vim Vi

1.簡介 vim vi是乙個功能強大的全螢幕文字編輯器,是linux unix上最常用的文字編輯器,它的作 用是建立 編輯 顯示文字 檔案。vim vi沒有選單,只有命令。2.工作模式 3.插入命令 a 在游標後附加文字 a 在本行行末附加文字 i 在游標前插入文字 i 在本行開始插入文字 o 在游...

一文搞定聯合索引

聯合索引 上文講解了索引的底層結構,但是留了乙個尾巴,就是沒有去講復合索引。今天來繼續梳理復合索引,所謂復合索引即是由多個字段組成的一條索引。例如下表 create table test id int 4 notnull auto increment a varchar 10 not null b ...

一文搞定babel轉換

code轉換為ast 遍歷ast樹 進行修改 還原為code targets支援哪些瀏覽器 babel polyfill是將整個es2015 環境引入到全域性中,會造成全域性汙染require core js modules set 改變了原型,所以可以在例項上使用方法 通過配置usebuiltin...