萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> vi介紹編 (1) vi快速入門

vi介紹編 (1) vi快速入門

class="22914"> ◎前言

我是pico的使用者,在我是redhat;linux使用者的時候,
當時我覺得pico給我的感覺很親切,功能也很強大.

了FreeBSD之後,突然發現竟然沒有pico,需要額外安裝
pine才能夠取得.但這也無妨,反正安裝很快...

直到有一天,當我要做取代的動作..這時....pico就....
於是我投向了vi;...去了解他的規則表示式,
一個簡單的小動作;讓繁瑣的工作瞬間解決.

不但如此..vi;是所有unix-like都有的編輯器...不用額外安裝
讓您在不同系統上也能夠很快的進入狀況.

◎FAST;STARTUP

若您之前不曾使用過全螢幕的編輯器,那麽您可能連一些簡單的編輯都有問題.
如此您可能要找一個已經稍微了解vi使用的人來帶領您.

vi是一個螢幕編輯器,這表示了vi幾乎用去了螢幕上的
每一行空間來展示檔案的內容,除了螢幕上的最後一行.
這一行是用來讓您發號命令給vi及vi給你一些相關檔案資訊時用的.

其他您必須了解的是vi是一個模式型編輯器.舉例來說:
你能輸入文字或者是執行命令,但是你必須在正確的模式才能夠執行.

您一剛開始編輯一個檔案時,您處在命令模式(command;;mode).
有一些命令能夠讓您切換到輸入模式(input;mode).
然而,只有一個鍵能夠讓您離開輸入模式,那就是鍵盤左上的<Esc>鍵
若您不了解您目前處於何種模式,您可以持續的按,直到vi發出聲音警告您,
如此您已經回到命令模式.當您嘗試做了一些vi所不允許的事情,
正常來說vi會發出"哔"聲(本機操作時)

要開始編輯一個檔案您可以這樣做:
$;vi;file_name;<按enter鍵>

然後輸入;:set;verbose;mode
然後vi會提醒您:
:set;the;mode;option;may;never;be;turn;on

:雖說如此;但對初學者來說;有多些訊息提示總比沒有好
放心;離開vi後就會恢復原先的noverbose;mode

如此可以讓vi當你產生錯誤時給予你多一些的訊息並當您猛按<Esc>鍵時
,會在螢幕的最下端顯示如下的訊息,提醒您已在命令模式.
Already;in;comman;mode;

:命令皆需要在命令模式下實行.

△簡易移動命令
h;;;;;;將標往左移動一個字元.

j;;;;;;將標往下移動一行.

k;;;;;;將標往上移動一行.

l;;;;;;將標往右移動一個字元.

<方向鍵>;;上下左右鍵也應該可以發揮作用.

:若純粹使用windows;內建的telent方向鍵無法使用..
所以知道hjkl的用處也不錯啦..

△簡易搜尋命令
/text;;;搜尋text字串
若今天我要搜尋panda則是;/panda;,;/;為搜尋命令.

△模式切換 ;;;;

a;;;;;;在標後可以新增開始新增

i;;;;;;在標前可以開始新增文字

o;;;;;;在標的下方新增一行,並可以開始輸入文字.

O;;;;;;在標的上方新增一行,並可以開始輸入文字.

<Esc>;;;;當你今天用a,i,o,O進入輸入模式,可以用<Esc>鍵回到命令模式.

:經個人使用發現;模式切換只要記住幾個就好;依照一般輸入習慣,
建議初學者記住a,O就好;(雖然到最後您會在不知不覺中全部記下)
尤其是O看似沒有o好用,但是今天若您想要在最上方新增一行時,
記得O這個指令真是方便阿..

△文字處理命令
:;
yy;;;;;標所在行.
p;;;;;;在標所在的下一行貼上所的資料.

刪除:
dd;;;;;將標所在行刪除.
x;;;;;;將標所在的那個字元刪除.

儲檔:
:w;;;;;以原檔案名稱儲存檔案.
:w;file_name;;;另存新檔,檔名為file_name

離開:
:q;;;;;;離開編輯及vi,若您已經編輯過檔案vi會拒絕您離開.;
:q!;;;;;強制離開vi;不論情況

:;所謂的一行;有可能在螢幕上是很多行(因為螢幕的一行擺放不下)
只要沒有換行符號產生;那就稱之為一行,用標移動您就會明.

◎小結:以上這些只是基礎的vi功能,熟悉了這些,您已經會了簡單的文書處理,
已經可以逐漸擺脫pico之類的編輯器,投向vi的懷抱.
過一陣子,當您漸漸了解vi的強大,ㄏㄏ...

◎參考資料:;man;vi;
copyright © 萬盛學電腦網 all rights reserved