命令
描述vim filename
開啟或新建檔案,並將游標置於第一行首
vim +n filename
開啟檔案,並將游標置於第n行首
vim + filename
開啟檔案,並將游標置於最後一行首
vim +/pattern filename
開啟檔案,並將游標置於第乙個與pattern匹配的串處
vim -r filename
在上次正用vim編輯時發生系統崩潰,恢復filename
vim filename….filename
開啟多個檔案,依次編輯
命令描述
all列出所有選項設定情況
term
設定終端型別
ignorance
在搜尋中忽略大小寫
list
顯示製表位(ctrl+i)和行尾標誌($)
number
顯示行號
report
顯示由面向行的命令修改過的數目
terse
顯示簡短的警告資訊
warn
在轉到別的檔案時若沒儲存當前檔案則顯示no write資訊
nomagic
允許在搜尋模式中,使用前面不帶「\」的特殊字元
nowrapscan
禁止vi在搜尋到達檔案兩端時,又從另一端開始
mesg
允許vi顯示其他使用者用write寫到自己終端上的資訊
:set number / set nonumber
顯示/不顯示行號
:set ruler /set noruler
顯示/不顯示標尺
:set hlsearch
高亮顯示查詢到的單詞
:set nohlsearch
關閉高亮顯示
:syntax on
語法高亮
:set nu
顯示行號
:set tabstop=8
設定tab大小,8為最常用最普遍的設定
:set softtabstop=8
4:4個空格,8:正常的製表符,12:乙個製表符4個空格,16:兩個製表符
:set autoindent
自動縮排
:set cindent
c語言格式裡面的自動縮排
長跳 如end-of-line被認為是乙個字命令
描述k nk
上 向上移動n行
j nj
下 向下移動n行
h nh
左 向左移動n行
l nl
右 向右移動n行
space
游標右移乙個字元
backspace
游標左移乙個字元
enter
游標下移一行
w/w游標右移乙個字至字首(w 長跳)
b/b游標左移乙個字至字首(b 長跳)
e或e游標右移乙個字至字尾(e 長跳)
)游標移至句尾
(游標移至句首
}游標移至段落開頭
,,<>等
ng移動到第n行上
g到最後一行
命令描述
ctrl+u
向檔案首翻半屏
ctrl+d
向檔案尾翻半屏
ctrl+f
向檔案尾翻一屏
ctrl+b
向檔案首翻一屏
nz將第n行滾至螢幕頂部,不指定n時將當前行滾至螢幕頂部
命令描述
i在游標前
i在當前行首
a游標後
a在當前行尾
o在當前行之下新開一行
o在當前行之上新開一行
r替換當前字元
r替換當前字元及其後的字元,直至按esc鍵
s從當前游標位置處開始,以輸入的文字替代指定數目的字元
s刪除指定數目的行,並以所輸入文字代替之
ncw/ncw
修改指定數目的字
ncc修改指定數目的行
==自動縮排當前行
命令描述
x/x刪除乙個字元,x刪除游標後的,而x刪除游標前的
dw刪除乙個單詞(刪除游標位置到下乙個單詞開始的位置)
dnw刪除n個單詞
dne也可,只是刪除到單詞尾
do刪至行首
d$刪至行尾
dd刪除一行
ndd刪除當前行及其後n-1行
dnl向右刪除n個字母
dnh向左刪除n個字母
dnj向下刪除n行,當前行+其上n行
dnk向上刪除n行,當期行+其下n行
cnw[word]
將n個word改變為word
c$改變到行尾
cc改變整行
shift+j
刪除行尾的換行符,下一行接上來了
命令描述
p貼上用x或d刪除的文字
ynw複製n個單詞
yy複製一行
ynl複製n個字元
y$複製當前游標至行尾處
nyy拷貝n行
命令描述
u撤銷前一次的操作
shif+u(u)
撤銷對該行的所有操作
命令描述
/pattern
從游標開始處向檔案尾搜尋pattern
?pattern
從游標開始處向檔案首搜尋pattern
n在同一方向重複上一次搜尋命令
n在反方向上重複上一次搜尋命令
cw newword
替換為newword
n繼續查詢
.執行替換
:s/p1/p2/g
將當前行中所有p1均用p2替代,g表示執行 用c表示需要確認
:n1,n2 s/p1/p2/g
將第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g
將檔案中所有p1均用p2替換
:1,$ s/string1/string2/g
在全文中將string1替換為string2
命令描述
m[a-z]
在文中做標記,標記號可為a-z的26個字母
`a移動到標記a處
:tabe fn
在乙個新的標籤頁中編輯檔案fn
gt切換到下乙個標籤頁
gt切換到上乙個標籤頁
:tabr
切換到第乙個標籤頁
:tabl
切換到最後乙個標籤頁
:tabm [n]
把當前tab移動到第n個tab之後
命令描述
標記文字
v進入visual 模式
v進入行的visual 模式
ctrl+v
進如塊操作模式用o和o改變選擇的邊的大小
在所有行插入相同的內容如include<
將游標移到開始插入的位置,按ctrl+v進入visual模式,選擇好模組後按i(shift+i),後插入要插入的文字,按[esc]完成
o跳轉游標到選中塊的另乙個端點
u將選中塊中的內容轉成大寫
o跳轉游標到塊的另乙個端點
aw選中乙個字
ab選中括號中的所有內容,包括括號本身
ab選中{}括號中的所有內容
ib選中括號中的內容,不含括號
ib選中{}中的內容,不含{}
對標記進行動作
>
塊右移<
塊左移y
複製塊d
刪除塊~
切換塊中內容的大小寫
命令描述
:n1,n2 co n3
將n1行到n2行之間的內容拷貝到第n3行下
:n1,n2 m n3
將n1行到n2行之間的內容移至到第n3行下
:n1,n2 d
將n1行到n2行之間的內容刪除
:n1,n2 w!command
將檔案中n1行至n2行的內容作為command的輸入並執行之 若不指定n1,n2,則表示將整個檔案內容作為command的輸入
命令描述
q[a-z]
開始記錄但前開始的操作為巨集,名稱可為【a-z】,然後用q終止錄製巨集
reg顯示當前定義的所有的巨集,用@[a-z]來在當前游標處執行巨集[a-z]
命令描述
:split
橫向分割視窗
:split file.c
為另乙個檔案file.c分隔視窗
:vsplit
縱向分割視窗
:nsplit file.c
為另乙個檔案file.c分隔視窗,並指定其行數
ctrl+w
在視窗中切換
:close
關閉當前視窗
ctrl+w s
水平分割視窗
ctrl+w w
切換視窗
ctrl+w q
退出當前視窗(由於同時有多個檔案,此命令不會影響其他視窗)
ctrl+w v
垂直分割視窗
命令描述
:q退出vi
:q!不儲存檔案並退出vi
:wq儲存修改並退出
:w將緩衝區寫入檔案,即儲存修改
:x儲存修改並退出
:zz儲存當前文件並退出vim
命令描述
:e filename
開啟檔案filename進行編輯
:e!放棄修改檔案內容,重新載入該檔案編輯
:!command
執行shell命令command
:r!command
將命令command的輸出結果放到當前行
:n1,n2 write temp.c
:read file.c
將檔案file.c的內容插入到當前游標所在的下面
VIM 命令速查表
今天整理乙份 vim 常用命令速查表,當做給自己備忘。進入vim 相關 命令描述 vim filename 開啟或者新建檔案 vim n filename 開啟檔案並將游標置於第n行行首 vim filename 開啟檔案並將游標置於最後一行行首 vim pattern filename 開啟檔案並...
linux重要指令速查表
brew install findutils with default namesdocker build t link v2 qemu img create f qcow2 test vm 1.qcow2 10g f 選項用於指定映象的格式,qcow2 格式是 qemu 最常用的映象格式,採用來寫...
mo彙編指令 彙編指令速查表
一 資料傳輸指令 它們在存貯器和暫存器 暫存器和輸入輸出埠之間傳送資料.1.通用資料傳送指令.mov 傳送字或位元組.movsx 先符號擴充套件,再傳送.movzx 先零擴充套件,再傳送.push 把字壓入堆疊.pop 把字彈出堆疊.pusha 把 ax,cx,dx,bx,sp,bp,si,di 依...