標籤:linux vim
一、開啟檔案
vim filename #開啟檔案,游標置於首行
vim /pattern filename #開啟檔案,游標模式比對的行
vim –r filename #恢複上次意外中止的編輯檔案
二、一般模式的游標定位
Ctrl+f #螢幕向下移動一頁
Ctrl+b #螢幕向上移動一頁
Ctrl+d #螢幕向下移動一頁
Ctrl+u #螢幕向上移動一頁
0或者home鍵 #移動游標到行首
$或者end鍵 #移動游標到行尾
H #移動游標到螢幕最上方的行
M #移動游標到螢幕中間的行
L #移動游標到螢幕最下方的行
G #移動游標到文檔最後一行
nG #移動游標到文檔n行
gg #移動游標到文檔首行
n<Enter> #下移游標n行
三、一般模式下對文本的編輯
x 刪除游標處的字元
dw 刪至下一個字的開頭
dG 刪除行,直到檔案結束
dd 刪除整行
db 刪除游標前面的字
:n,md 從第 m 行開始往前刪除 n 行
d, d$ 從游標處刪除到行尾
u 撤消最後一次修改
U 撤消當前行的所有修改
yy 將當前行的內容放入臨時緩衝區
nyy 將 n 行的內容放入臨時緩衝區
p 將臨時緩衝區中的文本放入游標後
P 將臨時緩衝區中的文本放入游標前
ndd 刪除 n 行放入名字為圓括弧內的可命名緩衝區,省略 n 表示當前行
c 刪除當前行並進入編輯模式
四、編輯模式下的文本替換和尋找
:s/aa/bb/g 將游標所在行出現的所有包含 aa 的字串中的 aa 替換為 bb
:s/\/bb/g 將游標所在行出現的所有 aa 替換為 bb, 僅替換 aa 這個單詞
:%s/aa/bb/g 將文檔中出現的所有包含 aa 的字串中的 aa 替換為 bb
:12,23s/aa/bb/g 將從12行到23行中出現的所有包含 aa 的字串中的 aa 替換為 bb
:12,23s/^/#/ 將從12行到23行的行首加入 # 字元
:%s= *$== 將所有行尾多餘的空格刪除
:g/^\s*$/d 將所有不包含字元(空格也不包含)的空行刪除.
/xxx(?xxx) 表示在整篇文檔中搜尋匹配xxx的字串, / 表示向下尋找, ? 表示向上尋找.其中xxx可以是正規運算式,關於正規式就不多說了.一般來說是區分大小寫, 要想不區分大小寫, 那得先輸入:set ignorecase
五、編輯多個文檔
vim filename1 filenam2 同時編輯兩個檔案
:n 進入編輯filename1
:N 進入編輯filename2
六、多視窗編輯
vim filename1 編輯filename1
:sp filename2 分視窗編輯filename2
Ctrl+w+j 在兩個視窗間切換
Ctrl+w+k 在兩個視窗間切換
:diffthis 對比兩個檔案
:vsp 分視窗切換為水平模式
七、存檔和退出
:w 將編輯的文檔寫入磁碟
:w! 強制寫入檔案
:wq 將文檔寫入磁碟並退出VIM
:q 退出VIM
:q! 強制退出VIM
ZZ 修改了文檔則儲存退出,反之則不儲存退出
:w filename 將文檔寫入filename
:r filename 讀入filename
:n1,n2 w filename 將n1到n2行寫入filename
:! command 執行command命令
本文出自 “緣隨心愿” 部落格,請務必保留此出處http://281816327.blog.51cto.com/907015/1616287
Vim常用命令