這篇文章主要為大家展示了“vi/vim命令模式和編輯模式各種操作的示例分析”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“vi/vim命令模式和編輯模式各種操作的示例分析”這篇文章吧。
創(chuàng)新互聯(lián)公司于2013年開始,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目網(wǎng)站設(shè)計、網(wǎng)站制作網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元淮陽做網(wǎng)站,已為上家服務(wù),為淮陽各地企業(yè)和個人服務(wù),聯(lián)系電話:13518219792
文本編輯器有很多,比如圖形模式的gedit、kwrite、OpenOffice ... ... ,文本模式下的編輯器有vi、vim(vi的增強版本)和nano ... ... vi和vim是我們在Linux中最常用的編輯器。我們有必要介紹一下vi(vim)最簡單的用法,以讓Linux入門級用戶在最短的時間內(nèi)學(xué)會使用它。
nano 工具和DOS操作系統(tǒng)下的edit操作相似,使用簡單,我們不作介紹了,如果您有興趣,不妨嘗試一下;
為什么要學(xué)會簡單應(yīng)用vi
vi或vim是Linux最基本的文本編輯工具,vi或vim雖然沒有圖形界面編輯器那樣點鼠標(biāo)的簡單操作,但vi編輯器在系統(tǒng)管理、服務(wù)器管理中,永遠(yuǎn)不是圖形界面的編輯器能比的。當(dāng)您沒有安裝X-windows桌面環(huán)境或桌面環(huán)境崩潰時,我們?nèi)孕枰址J较碌木庉嬈鱲i;
vi或vim 編輯器在創(chuàng)建和編輯簡單文檔最高效的工具;
3.1 如何調(diào)用vi ;
[root@localhost ~]# vi filename
~
~
~
~
~
3.2 vi 的三種命令模式;
Command(命令)模式,用于輸入命令;
Insert(插入)模式,用于插入文本;
Visual(可視)模式,用于視化的的高亮并選定正文;
3.3 文件的保存和退出;
Command 模式是vi或vim的默認(rèn)模式,如果我們處于其它命令模式時,要通過ESC鍵切換過來。
當(dāng)我們按ESC鍵后,接著再輸入:號時,vi會在屏幕的最下方等待我們輸入命令;
:w 保存;
:w filename 另存為filename;
:wq! 保存退出;
:wq! filename 注:以filename為文件名保存后退出;
:q! 不保存退出;
:x 應(yīng)該是保存并退出 ,功能和:wq!相同
3.4 光標(biāo)移動;
當(dāng)我們按ESC進入Command模式后,我們可以用下面的一些鍵位來移動光標(biāo);
j 向下移動一行;
k 向上移動一行;
h 向左移動一個字符;
l 向右移動一個字符;
ctrl+b 向上移動一屏;
ctrl+f 向下移動一屏;
向上箭頭 向上移動;
向下箭頭 向下移動;
向左箭頭 向左移動;
向右箭頭 向右移動;
我們編輯一個文件時,對于 j、k、l和h鍵,還能在這些動作命令的前面加上數(shù)字,比如 3j,表示向下移動3行。
3.5 插入模式(文本的插入);
i 在光標(biāo)之前插入;
a 在光標(biāo)之后插入;
I 在光標(biāo)所在行的行首插入;
A 在光標(biāo)所在行的行末插入;
o 在光標(biāo)所在的行的上面插入一行;
O 在光標(biāo)所在的行的下面插入一行;
s 刪除光標(biāo)后的一個字符,然后進入插入模式;
S 刪除光標(biāo)所在的行,然后進入插入模式;
3.6 文本內(nèi)容的刪除操作;
x 一個字符;
#x 刪除幾個字符,#表示數(shù)字,比如3x;
dw 刪除一個單詞;
#dw 刪除幾個單詞,#用數(shù)字表示,比如3dw表示刪除三個單詞;
dd 刪除一行;
#dd 刪除多個行,#代表數(shù)字,比如3dd 表示刪除光標(biāo)行及光標(biāo)的下兩行;
d$ 刪除光標(biāo)到行尾的內(nèi)容;
J 清除光標(biāo)所處的行與上一行之間的空格,把光標(biāo)行和上一行接在一起;
3.7 恢復(fù)修改及恢復(fù)刪除操作;
u 撤消修改或刪除操作;
按ESC鍵返回Command(命令)模式,然后按u鍵來撤消刪除以前的刪除或修改;如果您想撤消多個以前的修改或刪除操作,請按多按幾次u。這和Word的撤消操作沒有太大的區(qū)別;
3.8 可視模式;
在最新的Linux發(fā)行版本中,vi提供了可視模式,因為這個功能是vim才有的。如果您用的vi沒有這個功能,就換成vim就有了。打開可視模式,按ESC鍵,然后按v就進入可視模式;
可視模式為我們提供了極為友好的選取文本范圍,以高亮顯示;在屏幕的最下方顯示有;
-- 可視 --
或
--VISUAL--
進入可視模式,我們就可以用前面所說的命令行模式中的光標(biāo)移動指令,可以進行文本范圍的選取。
選取文本范圍有何用?
我們可以對某部份刪除作業(yè),按d鍵就刪除了我們選中的內(nèi)容。
選中內(nèi)容后,我們按y就表示復(fù)制;按d表示刪除;
值得一提是的刪除的同時,也表示復(fù)制。我們返回到命令模式,然后移動光標(biāo)到某個位置,然后按shift+p鍵,就把剛才刪除的內(nèi)容貼上了。我們先在這里提一句,在后文,我們還得詳細(xì)說說。
退出可視模式,還是用ESC鍵;
3.9 復(fù)制和粘帖的操作;
其實刪除也帶有剪切的意思,當(dāng)我們刪除文字時,可以把光標(biāo)移動到某處,然后按shift+p鍵就把內(nèi)容貼在原處,然后再移動光標(biāo)到某處,然后再按p或shift+p又能貼上;
p 在光標(biāo)之后粘帖;
shift+p 在光標(biāo)之前粘帖
來舉一例:
比如我們想把一個文檔的第三行復(fù)制下來,然后帖到第五行的后面,我們應(yīng)該怎么做呢?
有兩種方法;
第一種方法:
先把第三行刪除,把光標(biāo)移動到第三行處,然后用dd動作,接著再按一下shift+p鍵。這樣就把剛才刪除的第三行帖在原處了。
接著我們再用k鍵移動光標(biāo)到第五行,然后再按一下p鍵,這樣就把第三行的內(nèi)容又帖到第五行的后面了;
第二種方法;
進入可視模式,按ESC鍵,然后按v鍵。移動鼠標(biāo)指針,選中第三行的內(nèi)容,然后按y鍵復(fù)制;再移動指針到第五行,最后按p鍵;
所以復(fù)制和粘貼操作,是命令模式、插入模式及可視模式的綜合運用;我們要學(xué)會各種模式之間的切換,要常用ESC鍵;更為重要的學(xué)會在命令模式下移動光標(biāo);
3.10 關(guān)于行號;
有時我們配置一個程序運行時,會出現(xiàn)配置文件X行出現(xiàn)錯誤 。這時我們要用到行號相關(guān)的操作;
為所有內(nèi)容添加行號;
按ESC鍵,然后輸入:
:set number
光標(biāo)所處位置
在屏幕的右下角,有類似如下的;
57,8 27%
在這之中,57表示第57行,8表示第8個字符;
3.11 查找和替換功能;
3.11.1 查找;
首先,我們要進入ESC鍵,進入命令模式;我們輸入/或?就進入查找模式了;
/SEARCH 注:正向查找,按n鍵把光標(biāo)移動到下一個符合條件的地方;
?SEARCH 注:反向查找,按shift+n 鍵,把光標(biāo)移動到下一個符合條件的
舉一例:比如我想在一個文件中找到swap單詞,我應(yīng)該如下做;
首先按ESC鍵,進入命令模式,然后輸入;
/swap
或
?swap
3.11.2 替換;
按ESC鍵進入命令模式;
:s /SEARCH/REPLACE/g 注:把當(dāng)前光標(biāo)所處的行中的SEARCH單詞,替換成REPLACE,并把所有SEARCH高亮顯示;
:%s /SEARCH/REPLACE 注:把文檔中所有SEARCH替換成REPLACE;
:#,# s /SEARCH/REPLACE/g 注:#號表示數(shù)字,表示從多少行到多少行,把SEARCH替換成REPLACE;
注:在這之中,g表示全局查找;我們注意到,就是沒有替換的地方,也會把SEARCH高亮顯示;
舉例說明:
比如我們有一篇文檔要修改;
我們把光標(biāo)所在的行,把所有單詞the,替換成THE,應(yīng)該是:
:s /the/THE/g
我們把整篇文檔的所有的the都替換成THE,應(yīng)該是:
:%s /the/THE
我們僅僅是把第1行到第10行中的the,替換成THE,應(yīng)該是;
:1,10 s /the/THE/g
我寫本文的目的是讓新手在最短的時間內(nèi)用vi或vim創(chuàng)建、編輯和修改文件,所以說這篇文檔并不是大而全的vi手冊。如果把vi所有的功能都說全了,至少得寫一本千頁的手冊;本也沒有涉及更為高級的vi用法。如果想了解的更多,請查找man和help;
到目前為止,關(guān)于目錄和文件的操作,我寫過有幾篇了,從文件和目錄的創(chuàng)建、刪除、復(fù)制到屬性操作,最后到文件修改等系列文檔。這些文檔都是有相關(guān)性的,如果把這些相關(guān)性的文檔連起來,就是一個整體知識塊。我們只有掌握了這些知識,才能實現(xiàn)文件系統(tǒng)的管理。
在以后我會寫什么內(nèi)容呢????可能會補充一下文件的查找,其實以前有類似文檔,到時我總結(jié)一下,貼出來給大家看看就行了。
下一步是準(zhǔn)備網(wǎng)絡(luò)基礎(chǔ)文檔建設(shè)中,網(wǎng)絡(luò)基礎(chǔ)比較重要,這是我計劃的下一個重點。。。。。。。。
6、參考文檔;
man vi 和vi --help
以上是“vi/vim命令模式和編輯模式各種操作的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!