vim編輯器詳解
vi:Visual Interface----------------------全屏編輯器、模式化編輯器
vim:VI iMprove
vim模式: |
編輯模式(命令模式) 輸入模式 末行模式 |
模式轉換:
編輯→輸入 | 輸入→編輯←末行 | 編輯→末行 |
i:光標前輸入 a:光標後輸入 o/O:新建行輸入 I:行首輸入 A:行尾輸入 |
Esc |
: |
VIM快捷鍵:
打開文件:默認為編輯模式 | 關閉文件末行模式下 |
# vim FILENWME +n:打開文件,並定位於第n行 +:打開文件,定位至最後一行 +/PATTERN:打開文件,定位至第一次被模式匹配到的行的行首 | :q:退出 :w:保存 :wq!:強制退出 |
移動光標(編輯模式下) | |
逐字符移動: h:左 l:右 j:下 k:上 #h/l/j/k:移動#個字符 | 以單詞為單位移動: w:移至下一個單詞的詞首 e:跳至當前或下一個單詞的詞尾 b:跳至當前或前一個單詞的詞首 #w/e/b:移動#個單詞 |
行內跳轉: 0:絕對行首(包括空白字符) ^:行首的第一個非空白字符 $:絕對行尾 | 行間跳轉: #G:跳轉至第#行 G:最後一行 末行模式下,直接給出行號即可跳轉 |
翻屏: Ctrl+f:向下翻一屏 Ctrl+b Ctrl+d:向下翻半屏 Ctrl+u:向上翻半屏 | |
刪除單個字符 x:刪除光標所在處的單個字符 #x:刪除光標所在處及向後共#個字符 | |
刪除命令:d(復制命令:y------------------用法同d) | |
d命令跟跳轉命令組合使用 #d跳轉符:#dw、#db dd:刪除當前光標所在行(剪切) #dd:刪除包括當前光標所在行在內的#行(剪切) | 末行模式下: :startADD,endADDd .:表示當前行 $:最後一行 +#:向下的#行 |
粘貼命令:p P:如果刪除或復制內容為整行,則粘貼至光標所在行的上方;反之,則粘貼至光標所在字符的前面 p:如果刪除或復制內容為整行,則粘貼至光標所在行的下方;反之,則粘貼至光標所在字符的後面 |
修改:先刪除內容,再轉換為輸入模式 c:用法同d命令 | |
替換: r:光標指定字符,#r+要替換為的字符(#代表將其及後#個字符都替換) R:進入替換模式 | |
撤銷u編輯操作:undo u:撤銷前一次的編輯操作,連續u可連續撤銷(上限50) #u:直接撤銷最近#次編輯操作 撤銷最近一次撤銷操作:Ctrl+r | |
重復前一次編輯操作: . | |
可視化模式:(選中目標,執行操作) v:按字符選取 V:按矩形選取 | |
查找: /PATTERN、?PATTERN、n、N | |
查找並替換:在末行模式下使用s命令 :ADDR1,ADDR2s/PATTERN1/PATTERN2/g |
vim編輯器詳解