天天看點

ubuntu下 vi編輯器使用手冊

本文援引于   http://www.cnblogs.com/sophine/archive/2012/04/26/2471188.html

ubuntu下 vi編輯器使用手冊

檔案編輯器 vi

作者:北南南北

來自:LinuxSir.Org

摘要:vi 編輯器是最常用的文檔建立和編輯工具,初學者應該學會簡單應用vi ,學會在vi 中做簡單的修改、删除、插入、搜尋及替換作業;如果您是新手,不妨看看本文,或許這篇文檔能讓您在最短的時間内學會vi的簡單操作;

目錄

1、關于文本編輯器;

2、vi 編輯器;

3、vi 編輯器的使用方法;

3.1 如何調用vi ;

3.2 vi 的三種指令模式;

3.3 檔案的儲存和退出;

3.4 光标移動;

3.5 插入模式(文本的插入);

3.6 文本内容的删除操作;

3.7 恢複修改及恢複删除操作;

3.8 可視模式;

3.9 複制和粘帖的操作;

3.10 關于行号;

3.11 查找和替換功能;

3.11.1 查找;

3.11.2 替換;

4、關于本文;

5、後記;

6、參考文檔;

7、相關文檔;

+++++++++++++++++++++++++++++++++++++

正文

+++++++++++++++++++++++++++++++++++++

1、關于文本編輯器;

文本編輯器有很多,比如圖形模式的gedit、kwrite、OpenOffice ... ... ,文本模式下的編輯器有vi、vim(vi的增強版本)和nano ... ... vi和vim是我們在Linux中最常用的編輯器。我們有必要介紹一下vi(vim)最簡單的用法,以讓Linux入門級使用者在最短的時間内學會使用它。

nano 工具和DOS作業系統下的edit操作相似,使用簡單,我們不作介紹了,如果您有興趣,不妨嘗試一下;

2、vi 編輯器;

為什麼要學會簡單應用vi

vi或vim是Linux最基本的文本編輯工具,vi或vim雖然沒有圖形界面編輯器那樣點滑鼠的簡單操作,但vi編輯器在系統管理、伺服器管理 中,永遠不是圖形界面的編輯器能比的。當您沒有安裝X-windows桌面環境或桌面環境崩潰時,我們仍需要字元模式下的編輯器vi;

vi或vim 編輯器在建立和編輯簡單文檔最高效的工具;

3、vi 編輯器的使用方法;

3.1 如何調用vi ;

[[email protected] ~]# vi  filename

~

~

~

~

~

~

~

~

3.2 vi 的三種指令模式;

Command(指令)模式,用于輸入指令;

Insert(插入)模式,用于插入文本;

Visual(可視)模式,用于視化的的高亮并標明正文;

3.3 檔案的儲存和退出;

Command 模式是vi或vim的預設模式,如果我們處于其它指令模式時,要通過ESC鍵切換過來。

當我們按ESC鍵後,接着再輸入:号時,vi會在螢幕的最下方等待我們輸入指令;

:w  儲存;

:w  filename 另存為filename;

:wq! 儲存退出;

:wq! filename 注:以filename為檔案名儲存後退出;

:q! 不儲存退出;

:x 應該是儲存并退出 ,功能和:wq!相同

3.4 光标移動;

當我們按ESC進入Command模式後,我們可以用下面的一些鍵位來移動光标;

j 向下移動一行;

k 向上移動一行;

h 向左移動一個字元;

l 向右移動一個字元;

ctrl+b  向上移動一屏;

ctrl+f  向下移動一屏;

向上箭頭    向上移動;

向下箭頭    向下移動;

向左箭頭    向左移動;

向右箭頭    向右移動;

我們編輯一個檔案時,對于 j、k、l和h鍵,還能在這些動作指令的前面加上數字,比如 3j,表示向下移動3行。

3.5 插入模式(文本的插入);

i  在光标之前插入;

a  在光标之後插入;

I 在光标所在行的行首插入;

A  在光标所在行的行末插入;

o  在光标所在的行的上面插入一行;

O  在光标所在的行的下面插入一行;

s  删除光标後的一個字元,然後進入插入模式;

S  删除光标所在的行,然後進入插入模式;

3.6 文本内容的删除操作;

x 一個字元;

#x 删除幾個字元,#表示數字,比如3x;

dw 删除一個單詞;

#dw 删除幾個單詞,#用數字表示,比如3dw表示删除三個單詞;

dd 删除一行;

#dd 删除多個行,#代表數字,比如3dd 表示删除光标行及光标的下兩行;

d$ 删除光标到行尾的内容;

J 清除光标所處的行與上一行之間的空格,把光标行和上一行接在一起;

3.7 恢複修改及恢複删除操作;

u  撤消修改或删除操作;

按ESC鍵傳回Command(指令)模式,然後按u鍵來撤消删除以前的删除或修改;如果您想撤消多個以前的修改或删除操作,請按多按幾次u。這和Word的撤消操作沒有太大的差別;

3.8 可視模式;

在最新的Linux發行版本中,vi提供了可視模式,因為這個功能是vim才有的。如果您用的vi沒有這個功能,就換成vim就有了。打開可視模式,按ESC鍵,然後按v就進入可視模式;

可視模式為我們提供了極為友好的選取文本範圍,以高亮顯示;在螢幕的最下方顯示有;

-- 可視 --   

--VISUAL--

如圖:

進入可視模式,我們就可以用前面所說的指令行模式中的光标移動指令,可以進行文本範圍的選取。

選取文本範圍有何用?

我們可以對某部份删除作業,按d鍵就删除了我們選中的内容。

選中内容後,我們按y就表示複制;按d表示删除;

值得一提是的删除的同時,也表示複制。我們傳回到指令模式,然後移動光标到某個位置,然後按shift+p鍵,就把剛才删除的内容貼上了。我們先在這裡提一句,在後文,我們還得詳細說說。

退出可視模式,還是用ESC鍵;

3.9 複制和粘帖的操作;

其實删除也帶有剪切的意思,當我們删除文字時,可以把光标移動到某處,然後按shift+p鍵就把内容貼在原處,然後再移動光标到某處,然後再按p或shift+p又能貼上;

p 在光标之後粘帖;

shift+p 在光标之前粘帖

來舉一例:

比如我們想把一個文檔的第三行複制下來,然後帖到第五行的後面,我們應該怎麼做呢?

有兩種方法;

第一種方法:

先把第三行删除,把光标移動到第三行處,然後用dd動作,接着再按一下shift+p鍵。這樣就把剛才删除的第三行帖在原處了。

接着我們再用k鍵移動光标到第五行,然後再按一下p鍵,這樣就把第三行的内容又帖到第五行的後面了;

第二種方法;

進入可視模式,按ESC鍵,然後按v鍵。移動滑鼠指針,選中第三行的内容,然後按y鍵複制;再移動指針到第五行,最後按p鍵;

是以複制和粘貼操作,是指令模式、插入模式及可視模式的綜合運用;我們要學會各種模式之間的切換,要常用ESC鍵;更為重要的學會在指令模式下移動光标;

3.10 關于行号;

有時我們配置一個程式運作時,會出現配置檔案X行出現錯誤 。這時我們要用到行号相關的操作;

為所有内容添加行号;

按ESC鍵,然後輸入:

:set number

光标所處位置

在螢幕的右下角,有類似如下的;

         57,8          27%

在這之中,57表示第57行,8表示第8個字元;

3.11 查找和替換功能;

3.11.1 查找;

首先,我們要進入ESC鍵,進入指令模式;我們輸入/或?就進入查找模式了;

/SEARCH  注:正向查找,按n鍵把光标移動到下一個符合條件的地方;

?SEARCH  注:反向查找,按shift+n 鍵,把光标移動到下一個符合條件的

舉一例:比如我想在一個檔案中找到swap單詞,我應該如下做;

首先按ESC鍵,進入指令模式,然後輸入;

/swap 

?swap

3.11.2 替換;

按ESC鍵進入指令模式;

:s /SEARCH/REPLACE/g  注:把目前光标所處的行中的SEARCH單詞,替換成REPLACE,并把所有SEARCH高亮顯示;

:%s /SEARCH/REPLACE  注:把文檔中所有SEARCH替換成REPLACE;

:#,# s /SEARCH/REPLACE/g  注:#号表示數字,表示從多少行到多少行,把SEARCH替換成REPLACE;

注:在這之中,g表示全局查找;我們注意到,就是沒有替換的地方,也會把SEARCH高亮顯示;

舉例說明:

比如我們有一篇文檔要修改;

我們把光标所在的行,把所有單詞the,替換成THE,應該是:

:s /the/THE/g

我們把整篇文檔的所有的the都替換成THE,應該是:

:%s /the/THE

我們僅僅是把第1行到第10行中的the,替換成THE,應該是;

:1,10  s /the/THE/g

4、關于本文;

我寫本文的目的是讓新手在最短的時間内用vi或vim建立、編輯和修改檔案,是以說這篇文檔并不是大而全的vi手冊。如果把vi所有的功能都說全了,至少得寫一本千頁的手冊;本也沒有涉及更為進階的vi用法。如果想了解的更多,請查找man和help;

5、後記;

到目前為止,關于目錄和檔案的操作,我寫過有幾篇了,從檔案和目錄的建立、删除、複制到屬性操作,最後到檔案修改等系列文檔。這些文檔都是有相關性的,如果把這些相關性的文檔連起來,就是一個整體知識塊。我們隻有掌握了這些知識,才能實作檔案系統的管理。

在以後我會寫什麼内容呢????可能會補充一下檔案的查找,其實以前有類似文檔,到時我總結一下,貼出來給大家看看就行了。

下一步是準備網絡基礎文檔建設中,網絡基礎比較重要,這是我計劃的下一個重點。。。。。。。。

6、參考文檔;

man vi 和vi --help