vi命令匯集

2021-06-20 15:50:29 字數 1602 閱讀 7956

起初,想著寫個全面的vi教程,但是總是由於vi的命令較多較雜而不了而止。

後來,想著即使寫出乙個全面的vi教程,也未必有用。因為那時教程肯定很長很長,而對於很長的文章,大部分人是沒有耐性去把它讀完的。

於是,我每次寫一些vi的命令匯集,每次重複一些上次提及到的,從而達到溫故而知新。

本文與

tiankonguse

這裡。

vi可以分為三種狀態,分別是命令模式(command mode)、插入模式(insert mode)和底行模式(last line mode)

控制螢幕游標的移動,字元、字或行的刪除,移動複製某區段及進入insert mode下,或者到 last line mode。

只有在insert mode下,才可以做文字輸入,按「esc」鍵可回到命令列模式。

將檔案儲存或退出vi,也可以設定編輯環境,如尋找字串、列出行號……

i 進入插入模式,位置在游標處

a 進入插入模式,位置在游標的下乙個位置

o 進入插入模式,插入新的一行

h 游標左移 

j 游標下移 

k 游標上移

l 游標右移

[ctrl] + b 螢幕往後移動一頁 

[ctrl] + f 螢幕往前移動一頁

[ctrl] + u 螢幕往後移動半頁

[ctrl] + d 螢幕往前移動半頁

g 游標定位在文章最前,顯示仍為目前行

gg 游標定位在文章最前,顯示為文章最前

g 游標定位在文章最後,顯示仍為目前行

gg 游標定位在文章最後,顯示為文章最後

g[linenumber] 跳轉到第linenumber行,例如 g12 ,跳到第12行

g[linenumber] 同g[linenumber]

^ 移動到游標所在行的行首

$ 移動到游標所在行的行尾

w 游標跳到下個字的字首

e 游標跳到下個字的字尾

b 游標跳到上個字的字首

x 刪除游標所在的字元 

x 刪除游標所在字元的前乙個字元

d[cmd] 根據命令刪除字元,有d^,d$,dw,de,db,dd

dd 刪除游標所在的行

y[cmd] 根據命令複製字元,有y^,y$,yw,ye,yb,yy

yy 複製當前行

c[cmd] 根據命令刪除字元,並進入插入模式,有c^,c$,cw,ce,cb,cc

cc 刪除當前行並進入插入模式

p 在游標所在位置貼上

u 撤銷

[number][cmd] 執行number次cmd命令,例如: 3dd,從游標起刪除三行

r 替換游標所在位置的字元,替換後回到命令模式

r 替換游標所在位置的字元,替換後游標移到下乙個位置,可以繼續替換,按[esc]結束。

:w filename 另存為

:q 退出

:wq 儲存並退出

:q! 強制退出

:[linenumber] 跳轉到第linenumber行,例如 :12 ,跳到第12行

:set nu 顯示行號

:set nonu 隱藏行號

[esc] 從插入模式切換到命令列模式。

docker常用命令匯集

結束所有執行的容器 docker kill docker ps a q 刪除所有已經停止的容器 docker rm docker ps a q 刪除所有未打 dangling 標籤的映象 docker rmi docker images q f dangling true 刪除所有映象 docker...

Kafka常用命令匯集

建立topic bin kafka topics.sh create zookeeper localhost 2181 replication factor 1 partitions 1 topic test 展示topic bin kafka topics.sh list zookeeper lo...

vi命令備忘

進入vi的命令 vi filename 開啟或新建檔案,並將游標置於第一行首 vi n filename 開啟檔案,並將游標置於第n行首 vi filename 開啟檔案,並將游標置於最後一行首 vi pattern filename 開啟檔案,並將游標置於第乙個與pattern匹配的串處 vi r...