標籤:vim vi 編輯器
vi : visual Interface 可視化介面 因為我們頻繁的寫指令碼,設定管理員,所以需要一款功能強大的文字編輯器。vim:VI iMproved vi增強版vim是一款全屏、模式化編輯器vim模式的三種模式:編輯模式(命令模式:複製 刪除 粘貼 剪下 游標定位)輸入模式(輸入內容)末行模式(除了編輯命令之外的諸多檔案管理命令:儲存 退出,引入其他檔案內容,比編輯模式更多)預設是出處於編輯模式的。模式之間是可以轉換的。模式轉換::編輯模式-->輸入模式i: 在當前游標所在字元的前面,轉為輸入模式a:在當前游標所在字元的後面,轉為輸入模式o:在當前游標所在行的下方,建立一行,並轉為輸入模式I:在當前游標所行的行首,轉為輸入模式A:在當前游標所在行的行尾,轉為輸入模式O:在當前游標所在行的上方,建立一行,並轉為輸入模式模式之間的轉換:輸入模式-->編輯模式ESC編輯模式-->末行模式:末行模式-->編輯模式按兩次ESC1.開啟檔案 # vim /path/to/somefile如果檔案存在則開啟,如果不存在則是建立。 # vim +# inittab快速開啟,並使游標定位到第#行。 # vim + inittab快速開啟檔案,並使游標定位在最後一行上。 # vim +/PATTERN開啟檔案,定位至第一次被PATTERN(被匹配的字元,模式,樣品)匹配到的行的行首2.關閉檔案 2.1 末行模式下關閉檔案:q 退出:wq 儲存並退出:q! 不儲存強制退出:w 儲存:w! 強制儲存:x == :wq 儲存並退出 2.2 編輯模式下關閉檔案ZZ :儲存並退出3. 游標定位(編輯模式下進行的) 3.1 逐字元移動(都可以使用 #h 的格式跟數字組合快速移動游標)h:向左l :向右j :向下 k:向上 #h移動#個字元,按住#只能移動一次 3.2 逐單詞移動w:移動到下一個單詞的詞首e :跳到當前單詞詞尾或跳到下一個單詞的詞尾b :跳到當前單詞詞首或者前一個單詞詞首 #w移動到第#個單詞的詞首 3.3 行內跳轉0:跳到行首(絕對行首)^:跳到一行的第一個非空白字元$:絕對行尾 3.4 指定行間跳轉gg:跳到第一行#G:跳轉至第#行G:最後一行 末行模式下,直接給出行號即可 ex: :n ,跳轉到第n行4. 翻屏ctrl+f :向下翻一屏ctrl+b:向上翻一屏ctrl+d:向下翻半屏ctrl+u:向上翻半屏5. 刪除單個字元x:刪除游標所在處的單個字元#x:刪除游標所在處及向後的共#個字元6. 專用的刪除命令d :與跳轉命令組合使用 刪除單詞d0:刪除當前字元到行首的內容d$:刪除當前字元到行尾的內容 == D 刪除游標到行尾 #d跳轉符:刪除跳轉符#範圍個#dw #de #dbdG:刪除游標到尾部所有內容 刪除行dd:刪除游標所在行#dd:刪除包括游標所在行在內的#行n1,n2d:刪除第n1到n2行,刪除指定範圍的行********在末行模式下.:表示當前行+#:表示向下的#行(包括當前行)$:表示最後一行+7. 粘貼命令 小p:如果刪除或複製為整行內容,則粘貼至游標所在行的下方,如果刪除或複製為非整行,則粘貼至游標所在字元的後面。 大P:如果刪除或複製為整行內容,則粘貼至游標所在行的上方,如果刪除或複製為非整行,則粘貼至游標所在字元的前面。8. 複製命令 y : yank同dyy:複製單行#yy:複製#行9. 修改:先刪除內容,再轉換為輸入模式c:用法同dcccGcgg10. 替換單字元命令r :替換單個字元R:從游標處開始替換任意多個字元,ESC退出替換命令11. 撤銷u:撤銷前一次的編輯操作 連續u命令可撤銷此前的n詞編輯操作#u:直接撤銷最近#次編輯操作撤銷撤銷:ctrl+r12. 重複前一次編輯操作.13. 可視化模式v:按字元選區V:按矩形選區14. 尋找/pattern?patternnN: set ic 不區分大小搜尋15. 尋找並替換在末行模式下使用 s 命令: %s/old/new/g全文替換: n1,n2s/old/new/g 指定行替換,不詢問: n1,n2s/old/new/c 指定行替換,詢問16. 另存新檔:w new_filename 另存新檔指定檔案:w 儲存修改:wq 儲存退出:q! 不儲存退出:wq! 儲存修改並推出(檔案所有者及root可使用)ZZ: 儲存修改並退出技巧總結:17. 匯入一個檔案,或者命令產生的內容:r filename 18. 不退出編輯查詢“命令列”的命令:!which 命令19. 把一個命令的執行結果匯入到檔案中:r !date20. 定義快速鍵map ^p I#<esc> ^p --> ctrl+v+p 行首插入#map ^b 0x刪除行首字元21. 連續行注釋(實際上就是空位 和 # 或者 // 之間的替換): n1,n2s/^/#/g :給指定行首加入#: n1,n2s/^#//g :去掉多行行首#: n1,n2s/^/\/\//g :行首添加註釋 //22. 替換:ab myemail [email protected]23. 將捷徑儲存為長期有效捷徑:要在home目錄下,建立 .vimrc 檔案。/home/username/.vimrc /root/.vimrc
vim編輯器捷徑總結