游標移動
左:h
下:j
上:k
右:l
當前行行首:0
當前行行尾:$
後乙個單詞詞首:w,w
後乙個單詞詞尾:e,e
前乙個單詞詞首:b,b
下半屏:crtl+d
上半屏:crtl+u
向上滾動螢幕: crtl+y
向下滾動螢幕: crtl+e
跳到檔案尾:g
跳到檔案頭:g
當前螢幕首行:h
當前螢幕末行:l
當前螢幕**:m
指定行:行號g,:行號
指定字串前:/字串,?字串
當前行指定字元前:f字元,f字元
文字追加和插入
當前游標右方追加:a
當前游標行尾追加:a
當前游標左方追加:i
當前游標行首追加:i
當前行下方追加行:o
當前行上方插入行:o
文字刪除
刪除游標位置文字:x
刪除游標左方文字:x
刪除當前行:dd
刪除游標移動範圍內的文字:d游標移動命令
文字替換
替換1文字到多文字:s
替換1文字到1文字:r
替換到當前行尾:c
替換當前行:cc
從當前位置開始替換直到輸入esc:r
文字複製和貼上
(例)
複製游標以下3行:3yy,3y
複製游標以後6個單詞:6yw
貼上到游標以下:p
貼上到游標以上:p
通用替換命令
:行1,行2s/字串1/字串2/g
「行1,行2」指定方法例:
第5行到第30行:5,30
當前行到第30行:.,30
第5行到第末尾行:5,$
第5行到含有end的行:5,/end/
所有行:%
其他常用命令
顯示行號
:set number 或者 :set nu
隱藏行號
:set nonumber 或者 :set nonu
自動縮排
:set autoindent 或者 :set ai
不自動縮排
:set noautoindent 或者 :set noai
顯示tab及行尾字元
:set list
隱藏tab及行尾字元
:set nolist
設定tab寬度為4個字元
:set tabstop=4
檢視當前設定
:set all
:dd 刪除當前行
:ndd 刪除當前行以下n行(包括當前行在內)
:p 貼上
:yy 複製當前行
:nyy 複製當前行以下n行(包括當前行在內)
:dd和ndd也可以認為是「剪下」。
:n,m co k 複製n到m行,貼上到k行處(從下一行開始)
:n,m m k 剪下n到m行,貼上到k行處(從下一行開始)
:n,m d 刪除n到m行
注意的是,m必須大於n,而且m、n、k都在正文行號之內。比如說,如果檔案有10行,而你的操作**現了11,就會出現錯誤。m可以用特殊符號$,代表到結尾處。
如果要處理的文字比較多,那麼可以採用標號的方法。具體如下:
游標移到起始行,輸入ma
游標移到結束行,輸入mb
游標移到貼上行,輸入mc
然後 :'a,'b co 'c,就實現了複製貼上。如果把co改為m,就實現了剪下貼上。
g**=^g
g**=g
VI 游標移動及常用編輯命令
游標移動 左 h 下 j 上 k 右 l 當前行行首 0 當前行行尾 後乙個單詞詞首 w,w 後乙個單詞詞尾 e,e 前乙個單詞詞首 b,b 下半屏 crtl d 上半屏 crtl u 向上滾動螢幕 crtl y 向下滾動螢幕 crtl e 跳到檔案尾 g 跳到檔案頭 g 當前螢幕首行 h 當前螢幕...
vi游標移動和簡單編輯
命令模式下 數字 w 2w向後移動2個單詞 包含標點 數字 w 2w向後移動2個單詞 不包含標點 數字 b 2b向前移動2個單詞 包含標點 數字 b 2b向前移動兩個單詞 不包含標點 數字 e 2e向後移動到第二個單詞詞尾 包含標點 數字 e 2e向後移動到第二個單詞詞尾 不包含標點 數字 h j ...
Linux命令 編輯模式移動游標
敲命令按以下順序 vim filename e i esc 移動游標 0 零 將游標移動到行的起始處。將游標移動到行的末尾處。h 將游標移到當前視窗 而非全文 的第一行起始處。m 將游標移到當前視窗的居中一行起始處。l 將游標移到當前視窗的最後一行起始處。gg 將游標移動到文件的開始處 g 將游標移...