vim命令行模式常見快捷方式


普通模式下的快捷鍵

快捷鍵   說明
  i    insert, 在光標所在處輸入
  I    在當前光標所在行的行首輸入
  a    append, 在光標所在處后面輸入
  A    在當前光標所在行的行尾輸入
  o    在當前光標所在行的下方打開一個新行
  O    在當前光標所在行的上方打開一個新行
  ZZ    保存退出
  ZQ    不保存退出

  :q   退出
  :q!    強制退出,丟棄做出的修改
  :wq   保存退出
  :x    保存退出

命令模式
  di"   光標在" "之間,則刪除" "之間的內容

  yi(   光標在()之間,則復制()之間的內容
  vi[   光標在[]之間,則選中[]之間的內容
  dtx   刪除字符直到遇見光標之后的第一個 x 字符
  ytx   復制字符直到遇見光標之后的第一個 x 字符

字符間跳轉:
  h: 左 l: 右 j: 下 k: 上
  #COMMAND:跳轉由#指定的個數的字符

單詞間跳轉:
  w:下一個單詞的詞首
  e:當前或下一單詞的詞尾
  b:當前或前一個單詞的詞首
  #COMMAND:由#指定一次跳轉的單詞數

當前頁跳轉:
  H:頁首 M:頁中間行 L:頁底
  zt:將光標所在當前行移到屏幕頂端
  zz:將光標所在當前行移到屏幕中間
  zb:將光標所在當前行移到屏幕底端

行首行尾跳轉:
  ^: 跳轉至行首的第一個非空白字符
  0: 跳轉至行首
  $: 跳轉至行尾

行間移動:
  #G :擴展命令模式下:# 跳轉至由#指定行
  G:最后一行
  1G, gg: 第一行

句間移動:
  ):下一句(:上一句


段落間移動:
  }:下一段{:上一段
  Ctrl+f: 向文件尾部翻一屏
  Ctrl+b: 向文件首部翻一屏
  Ctrl+d: 向文件尾部翻半屏
  Ctrl+u:向文件首部翻半屏


字符編輯:
  x: 刪除光標處的字符
  #x: 刪除光標處起始的#個字符
  xp: 交換光標所在處的字符及其后面字符的位置
  ~:轉換大小寫
  J:刪除當前行后的換行符


替換命令(r, replace)
  r: 替換光標所在處的字符
  R:切換成REPLACE模式


刪除命令:
  d: 刪除命令,可結合光標跳轉字符,實現范圍刪除

復制命令(y, yank):
  y: 復制,行為相似於d命令


粘貼命令(p, paste):
  p:緩沖區存的如果為整行,則粘貼當前光標所在行的下方;否則,則粘貼至當前光標所在處的后面
  P:緩沖區存的如果為整行,則粘貼當前光標所在行的上方;否則,則粘貼至當前光標所在處的前面

vim查找,替換的方法

查找
  /PATTERN:從當前光標所在處向文件尾部查找
  ?PATTERN:從當前光標所在處向文件首部查找
  n:與命令同方向
  N:與命令反方向

查找並替換
  s: 在擴展模式下完成查找替換操作
  格式:s/要查找的內容/替換為的內容/修飾符
  要查找的內容:可使用模式
  替換為的內容:不能使用模式,但可以使用\1, \2, ...等后向引用符號;還可以使用“&”引用前面查找時查找到的整個內容

修飾符:
  i: 忽略大小寫
  g: 全局替換;默認情況下,每一行只替換第一次出現
  gc:全局替換,每次替換前詢問

 

查找替換中的分隔符/可替換為其它字符,例如
s@/etc@/var@g
s#/boot#/#i

例:

用vim,在/etc/default/grub倒數第二行末尾引號前面加入 xyz

:%s/\(.*CMD.*\)"/\1 xyz"/

用vim,在/etc/fstab中給行首不是#開頭的都加上#

方法一
:%s@\(^[^#].*\|^$\)@#\1@
方法二
:%s@^[^#]\|^$@#&@

用vim,去除#開頭的行

方法一
:%s/^#.*\n//
方法二 留下了空行
:%s@^#.*$@@

 




 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM