vim常用命令

2021-09-29 18:38:49 字數 3396 閱讀 3951

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 使游標向前或向後跳過乙個單...