Unix+Vi編輯器完全使用手冊-_第1頁
Unix+Vi編輯器完全使用手冊-_第2頁
Unix+Vi編輯器完全使用手冊-_第3頁
Unix+Vi編輯器完全使用手冊-_第4頁
Unix+Vi編輯器完全使用手冊-_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、Unix Vi編輯器完全使用手冊建議:本文是針對初學(xué)Unix Vi編輯器的網(wǎng)友的,而文后所付的詳盡的命令表也可作為已經(jīng)熟練使用vi的網(wǎng)友的參考之用,因此你最好下載本文或打印本文然后對照實踐學(xué)習(xí)。一、Unix編輯器概述編輯器是使用計算機(jī)的重要工具之一,在各種操作系統(tǒng)中,編輯器都是必不可少的部件。Unix及其相似的ix操作系統(tǒng)系列中,為方便各種用戶在各個不同的環(huán)境中使用,提供了一系列的ex編輯器,包括 ex, edit,ed 和vi.其中ex,edit,ed都是行編輯器,現(xiàn)在已很少有人使用,Unix提供他們的原因是考慮到滿足各種用戶特別是某些終端用戶的需要。值得慶幸的是,Unix提供了全屏幕的Vi

2、編輯器,這使我們的工作輕松不少。不少DOS用戶抱怨Vi編輯器不象DOS下的編輯器如edit那么好用,這是因為Vi 考慮到各種用戶的需要,沒有使用某些通用的編輯鍵(在各個不同的終端機(jī)上他們的定義是不同的,在某些終端機(jī)上甚至沒有這些鍵。而是采用狀態(tài)切換的方法,但這只是習(xí)慣的問題,一旦你熟練的使用上了vi你就會覺得它其實也很好用。雖然 Vi采用了狀態(tài)切換的方法,但電腦的硬件及操作系統(tǒng)多種多樣,某些電腦的鍵盤上沒有特定的幾個功能鍵!那麼不就有某些功能不能用了?這個問題在 Unix 系統(tǒng)上也一樣,幾乎各大電腦廠商都有自己的 Unix 系統(tǒng),而 vi 的操作方法也會隨之有點出入。這里我們采用 PC 的鍵盤

3、來說明 vi 的操作,但在具體的環(huán)境中還要參考相應(yīng)的資料,這一點是值得注意的。二、Vi入門(一、進(jìn)入vi在系統(tǒng)提示字符(如$、#下敲入vi <檔案名稱>,vi 可以自動幫你載入所要編輯的文件或是開啟一個新文件(如果該文件不存在或缺少文件名。進(jìn)入 vi 后螢?zāi)蛔蠓綍霈F(xiàn)波浪符號,凡是列首有該符號就代表此列目前是空的。(二、兩種模式如上所述,vi存在兩種模式:指令模式和輸入模式。在指令模式下輸入的按鍵將做為指令來處理:如輸入a,vi即認(rèn)為是在當(dāng)前位置插入字符。而在輸入模式下, vi則把輸入的按鍵當(dāng)作插入的字符來處理。指令模式切換到輸入模式只需鍵入相應(yīng)的輸入命令即可(如a,A,而要從輸入

4、模式切換到指令模式,則需在輸入模式下鍵入ESC鍵,如果不曉得現(xiàn)在是處於什麼模式,可以多按幾次 ESC,系統(tǒng)如發(fā)出嗶嗶聲就表示已處于指令模式下了。付:有指令模式進(jìn)入輸入模式的指令:新增 (appenda :從光標(biāo)所在位置後面開始新增資料,光標(biāo)後的資料隨新增資料向後移動。A:從光標(biāo)所在列最後面的地方開始新增資料。插入 (inserti:從光標(biāo)所在位置前面開始插入資料,光標(biāo)後的資料隨新增資料向後移動。I :從光標(biāo)所在列的第一個非空白字元前面開始插入資料。開始 (openo :在光標(biāo)所在列下新增一列并進(jìn)入輸入模式。O: 在光標(biāo)所在列上方新增一列并進(jìn)入輸入模式。(三、退出vi在指令模式下鍵入:q,:q!

5、,:wq或:x(注意:號,就會退出vi。其中:wq和:x是存盤退出,而:q是直接退出,如果文件已有新的變化,vi會提示你保存文件而:q命令也會失效,這時你可以用:w命令保存文件后再用:q退出,或用:wq或:x命令退出,如果你不想保存改變后的文件,你就需要用:q!命令,這個命令將不保存文件而直接退出vi。(四、基本編輯配合一般鍵盤上的功能鍵,像是方向鍵、Insert 、Delete 等等,現(xiàn)在你應(yīng)該已經(jīng)可以利用 vi 來編輯文件了。當(dāng)然 vi 還提供其他許許多多功能讓文字的處理更為方便。何謂編輯?一般認(rèn)為是文字的新增、修改以及刪除,甚至包括文字區(qū)塊的搬移、復(fù)制等等。先這里介紹 vi的如何做刪除與

6、修改。(注意:在 vi 的原始觀念里,輸入跟編輯是兩碼子事。編輯是在指令模式下操作的,先利用指令移動光標(biāo)來定位要進(jìn)行編輯的地方,然後才下指令做編輯。刪除與修改文件的命令:x:刪除光標(biāo)所在字符。dd :刪除光標(biāo)所在的列。r :修改光標(biāo)所在字元,r 後接著要修正的字符。R:進(jìn)入取替換狀態(tài),新增文字會覆蓋原先文字,直到按 ESC 回到指令模式下為止。s:刪除光標(biāo)所在字元,并進(jìn)入輸入模式。S:刪除光標(biāo)所在的列,并進(jìn)入輸入模式。其實呢,在PC上根本沒有這麼麻煩!輸入跟編輯都可以在輸入模式下完成。例如要刪除字元,直接按 Delete 不就得了。而插入狀態(tài)與取代狀態(tài)可以直接用 Insert 切換,犯不著用什

7、麼指令模式的編輯指令。不過就如前面所提到的,這些指令幾乎是每臺終端機(jī)都能用,而不是僅僅在 PC 上。在指令模式下移動光標(biāo)的基本指令是 h, j, k, l 。想來各位現(xiàn)在也應(yīng)該能猜到只要直接用 PC 的方向鍵就可以了,而且無論在指令模式或輸入模式下都可以。多容易不是。當(dāng)然 PC 鍵盤也有不足之處。有個很好用的指令 u 可以恢復(fù)被刪除的文字,而 U 指令則可以恢復(fù)光標(biāo)所在列的所有改變。這與某些電腦上的 Undo 按鍵功能相同。三、附件:vi詳細(xì)指令表(一、基本編輯指令:新增 (appenda :從光標(biāo)所在位置後面開始新增資料,光標(biāo)後的資料隨新增資料向後移動。A:從光標(biāo)所在列最後面的地方開始新增資

8、料。插入 (inserti:從光標(biāo)所在位置前面開始插入資料,光標(biāo)後的資料隨新增資料向後移動。I :從光標(biāo)所在列的第一個非空白字元前面開始插入資料。開始 (openo :在光標(biāo)所在列下新增一列并進(jìn)入輸入模式。O: 在光標(biāo)所在列上方新增一列并進(jìn)入輸入模式。x:刪除光標(biāo)所在字符。dd :刪除光標(biāo)所在的列。r :修改光標(biāo)所在字元,r 後接著要修正的字符。R:進(jìn)入取替換狀態(tài),新增文字會覆蓋原先文字,直到按 ESC 回到指令模式下為止。s:刪除光標(biāo)所在字元,并進(jìn)入輸入模式。S:刪除光標(biāo)所在的列,并進(jìn)入輸入模式。(二、光標(biāo)移動指令:由於許多編輯工作是藉由光標(biāo)來定位,所以 vi 提供許多移動光標(biāo)的方式,這個我

9、們列幾張簡表來說明(這些當(dāng)然是指令模式下的指令:指令說明功能鍵 0移動到光標(biāo)所在列的最前面Home $移動到光標(biāo)所在列的最後面End CTRLd向下半頁 CTRLf向下一頁PageDown CTRLu向上半頁 CTRLb向上一頁 PageUp 指令說明 H移動到視窗的第一列 M移動到視窗的中間列 L移動到視窗的最後列 b移動到下個字的第一個字母 w移動到上個字的第一個字母 e移動到下個字的最後一個字母 移動到光標(biāo)所在列的第一個非空白字元 指令說明 n- 減號移動到上一列的第一個非空白字元前面加上數(shù)字可以指定移動到以上 n 列 n+加號移動到下一列的第一個非空白字元前面加上數(shù)字可以指定移動到以下

10、 n 列 nG直接用數(shù)字 n 加上大寫 G 移動到第 n 列 指令說明 fx往右移動到 x 字元上Fx往左移動到 x 字元上 tx往右移動到 x 字元前Tx往左移動到 x 字元前 ;配合 f&t 使用,重復(fù)一次,配合 f&t 使用,反方向重復(fù)一次 /string往右移動到有 string 的地方?string往左移動到有 string 的地方 n配合 /&? 使用,重復(fù)一次N配合 /&? 使用,反方向重復(fù)一次 指令說明備注 n(左括號移動到句子的最前面句子是以前面加上數(shù)字可以指定往前移動 n 個句子! . ? 三種符號來界定n右括號移動到下個句子的最前面前面加上

11、數(shù)字可以指定往後移動 n 個句子 n左括弧移動到段落的最前面段落是以前面加上數(shù)字可以指定往前移動 n 個段落段落間的空白列界定n右括弧移動到下個段落的最前面前面加上數(shù)字可以指定往後移動 n 個段落 (三、更多的編輯指令這些編輯指令非常有彈性,基本上可以說是由指令與范圍所構(gòu)成。例如 dw 是由刪除指令 d 與范圍 w 所組成,代表刪除一個字 d(elete w(ord 。指令列表如下:d 刪除(deletey 復(fù)制(yankp 放置(putc 修改(change范圍可以是下列幾個:e 光標(biāo)所在位置到該字的最後一個字母w 光標(biāo)所在位置到下個字的第一個字母b 光標(biāo)所在位置到上個字的第一個字母$ 光標(biāo)

12、所在位置到該列的最後一個字母0 光標(biāo)所在位置到該列的第一個字母光標(biāo)所在位置到下個句子的第一個字母( 光標(biāo)所在位置到該句子的第一個字母 光標(biāo)所在位置到該段落的最後一個字母 光標(biāo)所在位置到該段落的第一個字母說實在的,組合這些指令來編輯文件有一點點藝術(shù)氣息。不管怎麼樣,它們提供更多編輯文字的能力。值得注意的一點是刪除與復(fù)制都會將指定范圍的內(nèi)容放到暫存區(qū)里,然後就可以用指令 p 貼到其它地方去,這是 vi 用來處理區(qū)段拷貝與搬移的辦法。某些 vi 版本,例如 Linux 所用的 elvis 可以大幅簡化這一坨指令。如果稍微觀察一下這些編輯指令就會發(fā)現(xiàn)問題其實是定范圍的方式有點雜,實際上只有四個指令罷了。指令 v 非常好用,只要按下 v 鍵,光標(biāo)所在的位置就會反白,然後就可 以移動光標(biāo)來設(shè)定范圍,接著再直接下指令進(jìn)行編輯即可。 對於整列操作, vi 另外提供了更方便的編輯指令。前面曾經(jīng)提到過刪除整列文 字的指令

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論