中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Unix Vi編輯器完全使用手冊
Unix Vi編輯器完全使用手冊
轉(zhuǎn)載自http://www.chinaunix.net 作者:sysgxb  發(fā)表于:2003-12-31 13:44:14
 
建議:本文是針對初學(xué)Unix Vi編輯器的網(wǎng)友的,而文后所付的詳盡的命令表也可作為已經(jīng)熟練使用vi的網(wǎng)友
的參考之用,因此你最好下載本文或打印本文然后對照實(shí)踐學(xué)習(xí)。
一、Unix編輯器概述
編輯器是使用計(jì)算機(jī)的重要工具之一,在各種操作系統(tǒng)中,編輯器都是必不可少的部件。Unix及其相似的ix
操作系統(tǒng)系列中,為方便各種用戶在各個(gè)不同的環(huán)境中使用,提供了一系列的ex編輯器,包括 ex, edit,ed 和
vi.其中ex,edit,ed都是行編輯器,現(xiàn)在已很少有人使用,Unix提供他們的原因是考慮到滿足各種用戶特別
是某些終端用戶的需要。
值得慶幸的是,Unix提供了全屏幕的Vi編輯器,這使我們的工作輕松不少。不少DOS用戶抱怨Vi編輯器不象
DOS下的編輯器如edit那么好用,這是因?yàn)閂i考慮到各種用戶的需要,沒有使用某些通用的編輯鍵(在各個(gè)
不同的終端機(jī)上他們的定義是不同的,在某些終端機(jī)上甚至沒有這些鍵)。而是采用狀態(tài)切換的方法,但這
只是習(xí)慣的問題,一旦你熟練的使用上了vi你就會覺得它其實(shí)也很好用。
雖然 Vi采用了狀態(tài)切換的方法,但電腦的硬件及操作系統(tǒng)多種多樣,某些電腦的鍵盤上沒有特定的幾個(gè)功
能鍵!那麼不就有某些功能不能用了?這個(gè)問題在 Unix 系統(tǒng)上也一樣,幾乎各大電腦廠商都有自己的 
Unix 系統(tǒng),而 vi 的操作方法也會隨之有點(diǎn)出入。這里我們采用 PC 的鍵盤來說明 vi 的操作,但在具體
的環(huán)境中還要參考相應(yīng)的資料,這一點(diǎn)是值得注意的。
二、Vi入門
(一)、進(jìn)入vi
在系統(tǒng)提示字符(如$、#)下敲入vi <檔案名稱>,vi 可以自動幫你載入所要編輯的文件或是開啟一個(gè)新
文件(如果該文件不存在或缺少文件名)。進(jìn)入 vi 后螢?zāi)蛔蠓綍霈F(xiàn)波浪符號,凡是列首有該符號就代
表此列目前是空的。
(二)、兩種模式
如上所述,vi存在兩種模式:指令模式和輸入模式。謚噶钅J較率淙氳陌醇鑫噶罾創(chuàng)恚喝縭淙?
a,vi即認(rèn)為是在當(dāng)前位置插入字符。而在輸入模式下,vi則把輸入的按鍵當(dāng)作插入的字符來處理。指令
模式切換到輸入模式只需鍵入相應(yīng)的輸入命令即可(如a,A),而要從輸入模式切換到指令模式,則需在
輸入模式下鍵入ESC鍵,如果不曉得現(xiàn)在是處於什麼模式,可以多按幾次 [ESC],系統(tǒng)如發(fā)出嗶嗶聲就表
示已處于指令模式下了。
附:由指令模式進(jìn)入輸入模式的指令:
新增 (append)
a : 從光標(biāo)所在位置後面開始新增資料,光標(biāo)後的資料隨新增資料向後移動。
A:  從光標(biāo)所在列最後面的地方開始新增資料。
插入 (insert)
i:  從光標(biāo)所在位置前面開始插入資料,光標(biāo)後的資料隨新增資料向後移動。
I : 從光標(biāo)所在列的第一個(gè)非空白字元前面開始插入資料。
開始 (open)
o : 在光標(biāo)所在列下新增一列并進(jìn)入輸入模式。
O:  在光標(biāo)所在列上方新增一列并進(jìn)入輸入模式。
(三)、退出vi
在指令模式下鍵入:q,:q!,:wq或:x(注意:號),就會退出vi。其中:wq和:x是存盤退出,而:q是直接退出,
如果文件已有新的變化,vi會提示你保存文件而:q命令也會失效,這時(shí)你可以用:w命令保存文件后再用:q
退出,或用:wq或:x命令退出,如果你不想保存改變后的文件,你就需要用:q!命令,這個(gè)命令將不保存文件
而直接退出vi。
(四)、基本編輯
配合一般鍵盤上的功能鍵,像是方向鍵、[Insert] 、[Delete] 等等,現(xiàn)在你應(yīng)該已經(jīng)可以利用 vi 來編輯文件
了。當(dāng)然 vi 還提供其他許許多多功能讓文字的處理更為方便。
何謂編輯?一般認(rèn)為是文字的新增、修改以及刪除,甚至包括文字區(qū)塊的搬移、復(fù)制等等。先這里介紹 vi
的如何做刪除與修改。(注意:在 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)入輸入模式。
其實(shí)呢,在PC上根本沒有這麼麻煩!輸入跟編輯都可以在輸入模式下完成。例如要?jiǎng)h除字元,直接按 
[Delete] 不就得了。而插入狀態(tài)與取代狀態(tài)可以直接用 [Insert] 切換,犯不著用什麼指令模式的編
輯指令。不過就如前面所提到的,這些指令幾乎是每臺終端機(jī)都能用,而不是僅僅在 PC 上。
在指令模式下移動光標(biāo)的基本指令是 h, j, k, l 。想來各位現(xiàn)在也應(yīng)該能猜到只要直接用 PC 的方向
鍵就可以了,而且無論在指令模式或輸入模式下都可以。多容易不是。
當(dāng)然 PC 鍵盤也有不足之處。有個(gè)很好用的指令 u 可以恢復(fù)被刪除的文字,而 U 指令則可以恢復(fù)光標(biāo)所
在列的所有改變。這與某些電腦上的 [Undo] 按鍵功能相同。
三、附件:vi詳細(xì)指令表
(一)、基本編輯指令:
新增 (append)
a : 從光標(biāo)所在位置後面開始新增資料,光標(biāo)後的資料隨新增資料向後移動。
A:  從光標(biāo)所在列最後面的地方開始新增資料。
插入 (insert)
i:  從光標(biāo)所在位置前面開始插入資料,光標(biāo)後的資料隨新增資料向後移動。
I : 從光標(biāo)所在列的第一個(gè)非空白字元前面開始插入資料。
開始 (open)
o : 在光標(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)的方式,這個(gè)我們列
幾張簡表來說明(這些當(dāng)然是指令模式下的指令):
┌—————┬—————————————┬—————┐
│指令      │說明                      │功能鍵    │
├—————┼—————————————┼—————┤
│0         │移動到光標(biāo)所在行的最前面  │[Home]    │
├—————┼—————————————┼—————┤
│$         │移動到光標(biāo)所在行的最後面  │[End]     │
├—————┼—————————————┼—————┤
│[CTRL][d] │向下半頁                  │          │
├—————┼—————————————┼—————┤
│[CTRL][f] │向下一頁                  │[PageDown]│
├—————┼—————————————┼—————┤
│[CTRL][u] │向上半頁                  │          │
├—————┼—————————————┼—————┤
│[CTRL][b] │向上一頁                  │ [PageUp] │
└—————┴—————————————┴—————┘
┌——┬—————————————————┐
│指令│說明                              │
├——┼—————————————————┤
│H   │移動到視窗的第一行                │
├——┼—————————————————┤
│M   │移動到視窗的中間行                │
├——┼—————————————————┤
│L   │移動到視窗的最後行                │
├——┼—————————————————┤
│b   │移動到下個(gè)字的第一個(gè)字母          │
├——┼—————————————————┤
│w   │移動到上個(gè)字的第一個(gè)字母          │
├——┼—————————————————┤
│e   │移動到下個(gè)字的最後一個(gè)字母        │
├——┼—————————————————┤
│^   │移動到光標(biāo)所在列的第一個(gè)非空白字元│
└——┴—————————————————┘
┌——┬———————————————————┐
│指令│說明                                  │
├——┼———————————————————┤
│n-  │減號移動到上一列的第一個(gè)非空白字元    │
│    │前面加上數(shù)字可以指定移動到以上 n 行   │
├——┼———————————————————┤
│n+  │加號移動到下一列的第一個(gè)非空白字元    │
│    │前面加上數(shù)字可以指定移動到以下 n 行   │
├——┼———————————————————┤
│nG  │直接用數(shù)字 n 加上大寫 G 移動到第 n 行 │
└——┴———————————————————┘
注:這里的n不是字母,代指數(shù)字,即100-表示上移100行,300G表示移到第300行
┌————┬———————————————┐
│指令    │說明                          │
├————┼———————————————┤
│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 個(gè)句子 │! . ? 三種符號來界定│
│n)      │右括號移動到下個(gè)句子的最前面          │                    │
│        │前面加上數(shù)字可以指定往後移動 n 個(gè)句子 │                    │
├————┼———————————————————┼——————————┤
│n{      │左括弧移動到段落的最前面              │段落是以            │
│        │前面加上數(shù)字可以指定往前移動 n 個(gè)段落 │段落間的空白列界定  │
│n}      │右括弧移動到下個(gè)段落的最前面          │                    │
│        │前面加上數(shù)字可以指定往後移動 n 個(gè)段落 │                    │
└————┴———————————————————┴——————————┘

(三)、更多的編輯指令
這些編輯指令非常有彈性,基本上可以說是由指令與范圍所構(gòu)成。例如 dw 是由刪除指令 d 與范圍 w 所
組成,代表刪除一個(gè)字 d(elete) w(ord) 。
指令列表如下:
d  刪除(delete)
y  復(fù)制(yank)
p  放置(put)
c  修改(change)
范圍可以是下列幾個(gè):
e  光標(biāo)所在位置到該字的最後一個(gè)字母
w  光標(biāo)所在位置到下個(gè)字的第一個(gè)字母
b  光標(biāo)所在位置到上個(gè)字的第一個(gè)字母
$  光標(biāo)所在位置到該行的最後一個(gè)字母
0  光標(biāo)所在位置到該列的第一個(gè)字母
)  光標(biāo)所在位置到下個(gè)句子的第一個(gè)字母
(  光標(biāo)所在位置到該句子的第一個(gè)字母
}  光標(biāo)所在位置到該段落的最後一個(gè)字母
{  光標(biāo)所在位置到該段落的第一個(gè)字母
說實(shí)在的,組合這些指令來編輯文件有一點(diǎn)點(diǎn)藝術(shù)氣息。不管怎麼樣,它們提供更多編輯文字的能力。值得
注意的一點(diǎn)是刪除與復(fù)制都會將指定范圍的內(nèi)容放到暫存區(qū)里,然後就可以用指令 p 貼到其它地方去,這
是 vi 用來處理區(qū)段拷貝與搬移的辦法。
某些 vi 版本,例如 Linux 所用的 elvis 可以大幅簡化這一坨指令。如果稍微觀察一下這些編輯指令
就會發(fā)現(xiàn)問題其實(shí)是定范圍的方式有點(diǎn)雜,實(shí)際上只有四個(gè)指令罷了。指令 v 非常好用,只要按下 v 鍵,
光標(biāo)所在的位置就會反白,然後就可以移動光標(biāo)來設(shè)定范圍,接著再直接下指令進(jìn)行編輯即可。
對於整行操作, vi 另外提供了更方便的編輯指令。前面曾經(jīng)提到過刪除整行文字的指令 dd 就是其中一個(gè)
;cc 可以修改整行文字;而 yy 則是復(fù)制整行文字;指令 D 則可以刪除光標(biāo)到該列結(jié)束為止所有的文字。
(四)、文件操作指令
文件操作指令多以 : 開頭,這跟編輯指令有點(diǎn)區(qū)別。
:q  結(jié)束編輯(quit)
:q!  不存檔而要放棄編輯過的文件。
:w  保存文件(write)其後可加所要存檔的檔名。
:wq  即存檔後離開。
ZZ  功能與 :wq 相同。
:x  與:wq相同
Little tip for using Vi from slick:
Vi provides hundreds of commands for effective editing. It‘s always possible to complete one operation
by different commands or combinations of commands. It‘s unnecessary to remember all the commands,
but always useful to look up the manual for more effective commands, of course, only if you are
interested in it.
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Unix之vi篇
第6章 vi編輯器的使用
CentOS Pub --- 純中文 CentOS 攻略站--vi 編輯器
第四章 文本編輯器
對話 UNIX: 新改進(jìn)的 Vim 編輯器
vi使用方法
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服