vim是乙個常用的文字編輯工具,在遠端伺服器中更改系統配置中經常使用。
基礎vim的模式
vim一般分為三種不同的模式,普通模式( normal mode )、編輯模式和命令模式.
使用vim開啟檔案則進入普通模式。在普通模式下可通過按鍵 h、j、k、l來控制游標的移動,通過 x、d(delete) 、 y(yank) 、p(put)等按鍵可對文字進行操作,在該模式下,鍵盤按鍵被視為類似 word下的快捷鍵的功能,而不是被視為簡單的文字輸入。
在編輯模式下可對檔案內容進行編輯。編輯模式下按鍵輸入均被視為文字輸入,而不再具備普通模式下的各種功能。使用者可以通過按鍵esc從編輯模式返回普通模式。
在普通模式下,鍵盤輸入 』 : '、 』 / '、 』 ? '則游標移動至介面最下行,並等待進一步輸入。之後vim會根據使用者輸入執行相應的動作,如儲存和退出、查詢和替換、執行外部命令等。命令模式下同樣通過esc鍵返回普通模式。
普通模式下的操作檔案。
vim filename //開啟名為filename的檔案
:w //儲存修改至原始檔
:wq //儲存修改並退出
:q! //不儲存修改,直接退出
:w filename //儲存修改(選中的部分)至filename(其中filename為不存在重名的新檔案)
常用小寫的i和o即可,i代表當行這個游標位插入,o代表下一行插入。
i //insert即插入模式,從游標所在位置開始插入,即插入的內容位於原游標所在位置字元之前
i //從游標所在行的行首開始插入
a //從游標所在行的行末開始附加
o //在游標所在行的下一行加入新一行
o //在游標所在行的上一行加入新一行
r //進入替換模式,螢幕下方會出現replace提示,此時的輸入會直接替換游標所在位置的字元,與windows下的 0 作用類似,同樣通過esc鍵返回
在普通模式下使用dd命令即可刪除當行
x //刪除游標所在處的字元(其大寫形式x為將游標之前的字元刪除,相當於backspace)
dd //刪除游標所在行的操作(常用)
dw //刪除乙個單詞
d3w //刪除三個單詞
d$ //刪除游標所在處至行尾的字元
d4l //刪除游標所在處起的四個字元
d2j //刪除兩行
同樣的,如 2dd 指令則表示將dd指令重複兩次,即為刪除兩行操作,2d2w 則表示將 d2w 操作執行兩次,即刪除四個單詞。
複製即通過 v 指令選定文字段,通過 y 指令複製內容,再通過 p 指令將文字放置在指定位置;剪下即通過 v 指令選定文字段,通過 d (或 x )指令刪除內容,再通過 p 指令將文字放置在指定的位置; p 指令除了用於複製內容的貼上外,還可以將上一次刪除的內容貼上在指定的位置,故而可以達到類似剪下的效果。對於 v 指令選中的文字,可以進行多種操作,包括複製(y)、刪除(x/d)、另存(:w filename)等,讀者完全可以自行進行組合嘗試。指令y和d的指令形式有許多相同之處,除了均有yy和dd這種針對一行內容的處理指令外,指令y可以與游標移動指令相結合,得到更好的使用效果。
p //put命令,將剪貼的內容(注意,既可以是複製的內容,也可以為之前刪除的內容)放置在游標後的位置,其大小字母p則表示放置在游標之前的位置
v //進入虛擬選擇模式(visual selection),被選擇的文字段被高亮顯示(v的選擇物件為字元,對應的大寫字母v則是以行為單位選擇)
ctrl + v //以矩形框的形式進行內容選擇
y //複製通過 v 操作選擇的文字,或則其本身也可以與游標移動指令一同使用
y5w //如y5w,則複製5個單詞(注意複製是從游標所在處開始的)
yy //複製游標所在行的內容
y0 //複製游標所在位置至行首的內容
y$ //複製游標所在位置至行尾的內容
yg //複製游標所在位置至文字結束的內容
yng //複製指令與ng指令的結合
//以及諸如y3w、y3j等指令
gg //跳轉至檔案第一行
g //跳轉至檔案最後行
ng //跳轉至檔案第 n 行
u //撤銷上一次操作
u //撤銷對游標所在行的所有操作
ctrl+r //重做上一操作
/keyword //按預設方向查詢關鍵字
?keyword //按與預設方向相反的方向查詢關鍵字
n //按與之前相同的查詢順序匹配下乙個出現相同關鍵字的位置
n //按與之前相反的查詢順序匹配下乙個出現相同關鍵字的位置
//使用者也可以通過ctrl + o 和 ctrl + i 進行位置的切換
:s/old/new //將游標所在行出現的第乙個old替換為new(僅對該行的第乙個old)
:s/old/new/g // 將游標所在行出現的所有old替換為new
:s/old/new/gc //同上,替換之前提示使用者確認是否替換
:n,ms/old/new/g //在n和m指定的行之間進行檢查和替換
:%s/old/new/g //針對整個文字進行替換
修改 ~/.vimrc 檔案
:
set nu //顯示行號,相應的set nonu則為不顯示行號
:set ic //搜尋忽略大小寫(ignore case)
,取消即為 set noic
:set hlsearch //搜尋時匹配的結果高亮顯示
:set incserch //設定搜尋時的搜尋順序
//可以看到,在對應的選項前面加入字首no即表示取消取消對應的選項
:set ruler //右下角展示狀態列
:set//顯示與系統預設設定不同的引數情況,即被修改過的引數情況
:set syntax on //設定vim會根據語法以不同顏色顯示不同的內容
:set syntax off
vim 命令 Vim常用命令
4.編輯 我發現膝上型電腦接外接鍵盤以後,使用觸控板和操作滑鼠都變得比較麻煩,所以想要學習一下vim,寫一篇筆記記錄常用命令。基本上vim共分為三種模式,分別是命令模式 command mode 輸入模式 insert mode 和底線命令模式 last line mode 啟動vim,便進入了命令...
VIM常用命令
vim命令記錄 vim是乙個非常強大,也非常複雜的編輯器。就連常用的命令也數以百計,而且通過各種組合,更是能夠達到數量驚人的地步。本文是我跟著vim使用者手冊學習vim的使用而作的記錄,記下一些vim的常用命令,方便查詢和複習。當然了,對於那些十分常用,比如 i 進入insert模式這種命令當然不會...
VIM常用命令
常用命令 1 游標命令 k,j,h,l 上下左右游標移動命令,雖然可以在linux中使用鍵盤右邊的四個游標鍵,但是記住這四個命令還有非常有用的,也就是右手在鍵盤上放置的位置部分 ng n為行數,該命令立即使游標跳到指定行。ctrl g 游標所在位置的行數和列數報告 w,b 使游標向前或向後跳過乙個單...