扣丁學(xué)堂Linux培訓(xùn)帶你讀懂vi(vim)編輯器命令使用教程
2018-07-13 11:53:06
1248瀏覽
目前vi(vim)是Linux開(kāi)發(fā)中常用的代碼編輯器,很多Linux發(fā)行版都默認(rèn)安裝了vi(vim)。vi(vim)命令繁多但是如果使用靈活之后將會(huì)大大提高效率。vi是“visualinterface”的縮寫(xiě),vim是viIMproved(增強(qiáng)版的vi)。在一般的系統(tǒng)管理維護(hù)中vi就夠用,如果想使用代碼加亮的話(huà)可以使用vim基本上vi可以分為三種狀態(tài),分別是命令模式(commandmode)、插入模式(Insertmode)和底行模式(lastlinemode),各模式的功能區(qū)分如下:
1)命令模式(commandmode)
控制屏幕光標(biāo)的移動(dòng),字符、字或行的刪除,移動(dòng)復(fù)制某區(qū)段及進(jìn)入插入模式、底行模式下。
2)插入模式(Insertmode)
只有在插入模式下,才可以做文字輸入,按ESC鍵可回到命令模式。
3)底行模式(lastlinemode)
將文件保存或退出vi,也可以設(shè)置編輯環(huán)境,如尋找字符串、列出行號(hào)。不過(guò)一般我們?cè)谑褂脮r(shí)把vi簡(jiǎn)化成兩個(gè)模式,就是將底行模式也算入命令模式。
一、打開(kāi)文件、保存、關(guān)閉文件(vi命令模式下使用)
vifilename//打開(kāi)filename文件
:w//保存文件
:codingke.com//保存至codingke.com文件
:q//退出編輯器,如果文件已修改請(qǐng)使用下面的命令
:q!//退出編輯器,且不保存
:wq//退出編輯器,且保存文件
二、插入文本或行(vi命令模式下使用,執(zhí)行下面命令后將進(jìn)入插入模式,按ESC鍵可退出插入模式)
a//在當(dāng)前光標(biāo)位置的右邊添加文本
i//在當(dāng)前光標(biāo)位置的左邊添加文本
A//在當(dāng)前行的末尾位置添加文本
I//在當(dāng)前行的開(kāi)始處添加文本(非空字符的行首)
O//在當(dāng)前行的上面新建一行
o//在當(dāng)前行的下面新建一行
R//替換(覆蓋)當(dāng)前光標(biāo)位置及后面的若干文本
J//合并光標(biāo)所在行及下一行為一行(依然在命令模式)
三、移動(dòng)光標(biāo)(vi命令模式下使用)
vi可以直接用鍵盤(pán)上的光標(biāo)來(lái)上下左右移動(dòng),但正規(guī)的vi是用小寫(xiě)英文字母h、j、k、l,分別控制光標(biāo)左、下、上、右移一格。
按Ctrl+b:屏幕往后移動(dòng)一頁(yè)。
按Ctrl+f:屏幕往前移動(dòng)一頁(yè)。
按Ctrl+u:屏幕往后移動(dòng)半頁(yè)。
按Ctrl+d:屏幕往前移動(dòng)半頁(yè)。
按數(shù)字0:移到當(dāng)前行的開(kāi)頭。
按G:移動(dòng)到文章的最后。
按$:移動(dòng)到光標(biāo)所在行的行尾。
按^:移動(dòng)到光標(biāo)所在行的行首。
按w:光標(biāo)跳到下個(gè)字的開(kāi)頭。
按e:光標(biāo)跳到下個(gè)字的字尾。
按b:光標(biāo)回到上個(gè)字的開(kāi)頭。
按#l:光標(biāo)往后移的第#個(gè)位置,如:5l,56l.
四、刪除、恢復(fù)字符或行(vi命令模式下使用)
x:每按一次,刪除光標(biāo)所在位置的后面一個(gè)字符。
#x:刪除光標(biāo)所在位置的后面#個(gè)字符,例如,6x表示刪除光標(biāo)所在位置的后面6個(gè)字符。
X:每按一次,刪除光標(biāo)所在位置的前面一個(gè)字符。
#X:刪除光標(biāo)所在位置的前面#個(gè)字符,例如,20X表示刪除光標(biāo)所在位置的前面20個(gè)字符。
dd:刪除光標(biāo)所在行。
#dd:從光標(biāo)所在行開(kāi)始刪除#行。
五、搜索(vi命令模式下使用)
/yusi123//向光標(biāo)下搜索yusi123字符串
?yusi123//向光標(biāo)上搜索yusi123字符串
n//向下搜索前一個(gè)搜素動(dòng)作
N//向上搜索前一個(gè)搜索動(dòng)作
六、跳至指定行(vi命令模式下使用)
n+//向下跳n行
n-//向上跳n行
nG//跳到行號(hào)為n的行
G//跳至文件的底部
七、設(shè)置行號(hào)(vi命令模式下使用)
:setnu//顯示行號(hào)
:setnonu//取消顯示行號(hào)
八、復(fù)制、粘貼(vi命令模式下使用)
yy//將當(dāng)前行復(fù)制到緩存區(qū),也可以用“ayy復(fù)制,”a為緩沖區(qū),a也可以替換為a到z的任意字母,可以完成多個(gè)復(fù)制任務(wù)。
nyy//將當(dāng)前行向下n行復(fù)制到緩沖區(qū),也可以用“anyy復(fù)制,”a為緩沖區(qū),a也可以替換為a到z的任意字母,可以完成多個(gè)復(fù)制任務(wù)。
yw//復(fù)制從光標(biāo)開(kāi)始到詞尾的字符。
nyw//復(fù)制從光標(biāo)開(kāi)始的n個(gè)單詞。
y^//復(fù)制從光標(biāo)到行首的內(nèi)容。
y$//復(fù)制從光標(biāo)到行尾的內(nèi)容。
p//粘貼剪切板里的內(nèi)容在光標(biāo)后,如果使用了前面的自定義緩沖區(qū),建議使用”ap進(jìn)行粘貼。
P//粘貼剪切板里的內(nèi)容在光標(biāo)前,如果使用了前面的自定義緩沖區(qū),建議使用”aP進(jìn)行粘貼。
九、替換(vi命令模式下使用)
:s/old/new//用new替換行中首次出現(xiàn)的old
:s/old/new/g//用new替換行中所有的old
:n,ms/old/new/g//用new替換從n到m行里所有的old
:%s/old/new/g//用new替換當(dāng)前文件里所有的old
十、編輯其他文件
:eotherfilename//編輯文件名為otherfilename的文件。
十一、修改文件格式
:setfileformat=unix//將文件修改為unix格式,如win下面的文本文件在linux下會(huì)出現(xiàn)^M。
注意:如果不知道自己處在什么模式時(shí)可以按2次Esc鍵即可回到命令模式,會(huì)有最后提醒一點(diǎn):注意大小寫(xiě)?。?!
以上就是關(guān)于扣丁學(xué)堂Linux培訓(xùn)之vim使用教程匯總的詳細(xì)介紹,希望對(duì)大家有所幫助,想要了解更多內(nèi)容的小伙伴可以登錄扣丁學(xué)堂官網(wǎng)咨詢(xún)。扣丁學(xué)堂是專(zhuān)業(yè)的Linux培訓(xùn)班,不僅有專(zhuān)業(yè)的老師和與時(shí)俱進(jìn)的課程體系,還有大量的Linux視頻教程供學(xué)員觀看學(xué)習(xí)哦??鄱W(xué)堂Linux技術(shù)交流群:422345477。
【關(guān)注微信公眾號(hào)獲取更多的學(xué)習(xí)資料】
查看更多關(guān)于“Linux培訓(xùn)資訊”的相關(guān)文章>>
標(biāo)簽:
Linux培訓(xùn)Linux視頻教程
Linux在線(xiàn)學(xué)習(xí)
Linux在線(xiàn)視頻
Linux系統(tǒng)