vim_常用命令快捷鍵

一、進(jìn)入輸入模式

命令 說明
i 在當(dāng)前光標(biāo)所在處前插入文本
I 將光標(biāo)移動(dòng)到當(dāng)前行的行首,并在行首前插入文本
a 在當(dāng)前光標(biāo)所在處之后插入文本
A 將光標(biāo)移動(dòng)到當(dāng)前行的行末,并在行末之后插入文本
o 在光標(biāo)所在行的下面新插入一行,并將光標(biāo)移動(dòng)到新行的行首插入文本
O 在光標(biāo)所在行的上面新插入一行,并將光標(biāo)移動(dòng)到新行的行首插入文本

二、光標(biāo)移動(dòng)

命令 說明
h或者左方向鍵 將光標(biāo)向左移動(dòng)一格;
j或者下方向鍵 將光標(biāo)向下移動(dòng)一格;
k或者上方向鍵 將光標(biāo)向上移動(dòng)一格;
l或者右方向鍵 將光標(biāo)向右移動(dòng)一格;
$ 移動(dòng)光標(biāo)到當(dāng)前行的行末;
數(shù)字0 移動(dòng)光標(biāo)到當(dāng)前行的行首;
w 移動(dòng)光標(biāo)到下個(gè)字的開頭;
e 移動(dòng)光標(biāo)到下個(gè)字的字尾;
b 移動(dòng)光標(biāo)回上個(gè)字的開頭;
nl 在當(dāng)前行中往右移動(dòng)n個(gè)字符,如:2l、34l;
crtl+b 屏幕往上翻一頁(yè);
crtl+f 屏幕往下翻一頁(yè);
crtl+u 屏幕往上翻半頁(yè);
crtl+d 屏幕往下翻半頁(yè);
lG 移動(dòng)光標(biāo)到文件的第一行;
G 移動(dòng)光標(biāo)到文件的最后一行。
gg 移動(dòng)光標(biāo)到第一行

三、文本編輯

命令 說明
r 替換光標(biāo)所在處的字符;
R 替換光標(biāo)所到之處的字符,直到按ESC鍵為止;
J 把光標(biāo)所在行的下一行內(nèi)容接到當(dāng)前行的行末;
x 刪除光標(biāo)所在位置的字符;
nx 刪除光標(biāo)所在位置開始的n個(gè)字符,如3x刪除3個(gè)字符;
X 刪除光標(biāo)所在位置的前一個(gè)字符;
nX 刪除光標(biāo)所在位置的前n個(gè)字符;
dw 刪除光標(biāo)所處位置的單詞;
ndw 刪除由光標(biāo)所處位置之前的n個(gè)單詞;
db 刪除光標(biāo)所處位置之前的一個(gè)單詞;
ndb 刪除光標(biāo)所處位置之前的n個(gè)單詞;
dd 刪除光標(biāo)所在的行;
ndd 刪除光標(biāo)所在行開始的n行;
d0 刪除由光標(biāo)所在行的第一個(gè)字符到光標(biāo)所在位置的前一個(gè)字符之間的內(nèi)容;
d$ 刪除由光標(biāo)所在位置到光標(biāo)所在行的最后一個(gè)字符之間的內(nèi)容;
dlG 刪除由文件第一行到光標(biāo)所在行之間的內(nèi)容;
dG 刪除由光標(biāo)所在行到文件最后一行之間的內(nèi)容;
u 撤銷更改的內(nèi)容;
ctrl+u 撤銷在輸入模式下輸入的內(nèi)容。

四、復(fù)制粘貼

命令 說明
yw 復(fù)制光標(biāo)所在位置到單詞末尾之間的字符;
nyw 復(fù)制光標(biāo)所在位置之后的n個(gè)單詞;
yy 復(fù)制光標(biāo)所在行;
nyy 復(fù)制由光標(biāo)所在行開始的n行;
p 將復(fù)制的內(nèi)容粘貼到光標(biāo)所在位置。

五、查找與替換

命令 說明
/str 從光標(biāo)位置開始往文件末尾查找str,按n查找下一個(gè),按N返回上一個(gè);
?str 從光標(biāo)位置開始往文件開頭查找str,按n查找下一個(gè),按N返回上一個(gè);
:s/p1/p2/g 將光標(biāo)所處行中所有p1均用p2替代;
:n1,n2s/p1/p2/g 將第n1到n2行中所有p1均用p2替代;
:g/p1/s//p2/g 將文件中所有p1均用p2替換

六、末行模式命令

命令 說明
w 保存當(dāng)前文件;
w! 強(qiáng)制保存;
w file 將當(dāng)前編輯的內(nèi)容寫到文件file中;
q 退出vi;
q! 不保存文件退出vi;
e file 打開并編輯文件file,如果文件不存在則創(chuàng)建一個(gè)新文件;
r file 把文件file的內(nèi)容添加到當(dāng)前編輯的文件中;
n 移動(dòng)光標(biāo)到第n行;
!command 執(zhí)行Shell命令command
r!command 將命令command的輸出結(jié)果添加到當(dāng)前行。
ZZ 保存修改并退出vi

七、其它

命令 說明
:set nu 指設(shè)置行號(hào);
:set nonu 指取消行號(hào);
:n 指移動(dòng)光標(biāo)到第n行;
:n1,n2d 指刪除指定范圍的行;

八、常見應(yīng)用

1、定義VI快捷鍵

格式為:map 快捷鍵 觸發(fā)命令

例子:

(1)map ^P I# 指在這一行的行尾加入注釋符號(hào)#

(2)map ^B ox 指在這一行的行尾刪除注釋符#

說明:

在VI中如何輸入^P這個(gè)字符呢?

方法有兩種:

  • 一種是ctrl+v ctrl+p

  • 另一種是ctrl+v+p

2、取消VI快捷鍵

  • 格式為unmap

3、連續(xù)行注釋

(1):n1,n2s/^/#/g 指第n1到n2行都注釋掉

(2):n1,n2s/^/#//g 指第n1到第n2行的注釋符都刪除

(3):n1,n2s/^////g 指把第n1到第n2行加入//符號(hào)

說明:

^:表示匹配行首;

\:表示轉(zhuǎn)義符

4、替換

格式:ab XXX YYY

例子:

ab sammail samlee@126.com

指在vi中輸入sammail按空格鍵或者回車鍵就會(huì)把sammail自動(dòng)變?yōu)?a target="_blank" rel="nofollow">samlee@126.com。我們?cè)趯憇hell腳本時(shí)經(jīng)常要加上作者的信息,這個(gè)方法就很方便我們填寫自己的信息了。

如何取消上面對(duì)ab的定義呢?

直接unab即可

5、VI的配置文件

(1)VI配置文件的位置:~/.vimrc(默認(rèn)為空)

(2)在編輯VI時(shí)我們常常需要打開行號(hào)的功能,如果要打開VI文件就顯示行號(hào),可以在~/.vimrc中加入set nu這句話就可以了。

九、vim常用命令圖解:

vim-cmd.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 曾經(jīng)在思科的工廠測(cè)試系統(tǒng)`KlemTest` (`SUSE`命令行模式)中使用`VI`/`VIM`超過2年半,現(xiàn)在...
    戈多在地獄閱讀 1,982評(píng)論 1 13
  • 目錄(?)[-] 關(guān)于Vim 1 Vim的幾種模式 啟動(dòng)Vim 文檔操作 光標(biāo)的移動(dòng) 1 基本移動(dòng) 2 翻屏 3 ...
    SunnyLeong閱讀 9,011評(píng)論 0 32
  • 待整理~ 1、vim ~/.vimrc 進(jìn)入配置文件 如果不知道vimrc文件在哪,可使用 :scriptname...
    spfanlost閱讀 1,833評(píng)論 0 0
  • 記得,在三年前,還不是人人都玩微信的時(shí)代,如果有人低頭在玩手機(jī),還是讓人刮目相看的。我曾說過,要用相機(jī)拍一百?gòu)埲藗?..
    楊金社閱讀 1,564評(píng)論 1 3
  • 字體系列 運(yùn)行圖片 字體風(fēng)格 運(yùn)行圖片 字體加粗 運(yùn)行圖片 字體大小 正常展示
    Lv_0閱讀 294評(píng)論 0 1

友情鏈接更多精彩內(nèi)容