版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Linux下vi使用手冊(cè)a :從光標(biāo)所在位置後面開(kāi)始新增資料,光標(biāo)後的資料隨新增資料向後移動(dòng)。 A: 從光標(biāo)所在列最後面的地方開(kāi)始新增資料。 插入 (insert) i: 從光標(biāo)所在位置前面開(kāi)始插入資料,光標(biāo)後的資料隨新增資料向後移動(dòng)。 I :從光標(biāo)所在列的第一個(gè)非空白字元前面開(kāi)始插入資料。 開(kāi)始 (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),新增文字會(huì)覆蓋原先文字,直到按 ESC 回到指令模式下為止。 s:
2、 刪除光標(biāo)所在字元,并進(jìn)入輸入模式。 S: 刪除光標(biāo)所在的列,并進(jìn)入輸入模式。 文件操作指令多以 : 開(kāi)頭,這跟編輯指令有點(diǎn)區(qū)別。 :q 結(jié)束編輯(quit) :q! 不存檔而要放棄編輯過(guò)的文件。 :w 保存文件(write)其後可加所要存檔的檔名。 :wq 即存檔後離開(kāi)。 zz 功能與 :wq 相同。vi 或 vedit 命令 用途 用全屏顯示編輯文件。 語(yǔ)法 vi | vedit -l -R -tTag -v -wNumber -yNumber -r File + | -c Subcommand File . 描述 vi 命令基于基礎(chǔ) ex 編輯器啟動(dòng)全屏編輯器。因此,ex 子命令可以在
3、vi 編輯器中使用。vedit 命令啟動(dòng)適用于初學(xué)者的 vi 編輯器版本。在 vedit 編輯器中,報(bào)告選項(xiàng)設(shè)置為 1,設(shè)置了 showmode 選項(xiàng)和 novice 選項(xiàng),使其成為一個(gè)行編輯器。 通過(guò)指定被編輯文件名,可以啟動(dòng) vi 編輯器。如果在命令行上提供多個(gè) File 參數(shù),vi 編輯器按指定的順序編輯每一個(gè)文件?,F(xiàn)有文件的 vi 編輯器在屏幕底部顯示文件名、行數(shù)和字符數(shù)。在多字節(jié)語(yǔ)言環(huán)境的情況下,字符數(shù)必須解釋成字節(jié)數(shù)。 由于 vi 編輯器是全屏編輯器,所以可以逐屏編輯文本。vi 編輯器在編輯緩沖區(qū)為編輯的文件制作副本,并且直到保存更改文件內(nèi)容才會(huì)更改。光標(biāo)在顯示屏幕上的位置表明它在
4、文件中的位置,并且子命令在光標(biāo)位置影響該文件。 vi 編輯器的局限性 以下列表提供了 vi 編輯器的最大限度。這些計(jì)數(shù)采用單字節(jié)字符集。 每行 LINE_MAX 個(gè)字符 每全局命令列表 256 個(gè)字符 128 個(gè)字符在以前被插入和刪除的文本中 128 個(gè)字符在外殼程序轉(zhuǎn)義命令中 128 個(gè)字符在一個(gè)字符串值的選項(xiàng)中 30 個(gè)字符在一個(gè)標(biāo)記名中 128 個(gè)映射宏,總共 2048 個(gè)字符 1,048,560 行,每行強(qiáng)制不能超過(guò) LINE_MAX 個(gè)字符 宏名和宏文本被限制在 100 個(gè)字符內(nèi)。 注: 對(duì)大于 64MB 的文件運(yùn)行 vi 編輯器可能會(huì)顯示以下的錯(cuò)誤信息: 0602-103 file
5、 too large to place in /tmp vi 編輯方式 vi 編輯器按以下方式操作: 命令方式 當(dāng)啟動(dòng) vi 編輯器時(shí),它處于命令方式。您可以輸入任何子命令,除了那些指定僅用于文本輸入方式的子命令。當(dāng)子命令和其它方式結(jié)束時(shí),vi 編輯器返回命令方式。按 Esc 鍵取消子命令。 文 本輸入方式 按這種方式使用 vi 編輯器來(lái)添加文本。用以下任意子命令進(jìn)入文本輸入方式: a 子命令、A 子命令、i 子命令、I 子命令、o子命令、O 子命令、cx 子命令(其中 x 代表子命令的范圍)、C 子命令、s 子命令、S 子命令和 R 子命令。輸入這些子命令中的一個(gè)后,即可輸入文本到編輯緩沖區(qū)
6、中。要返回到命令方式,按 ESC 鍵以正常退出或按“中斷”(Ctrl-C 按鍵順序)以非正常方式結(jié)束。 最后行方式 帶前綴 :(冒號(hào))、/(斜杠)、?(問(wèn)號(hào))、!(感嘆號(hào))或 !(兩個(gè)感嘆號(hào))的子命令在屏幕底部的顯示行上讀取輸入。當(dāng)輸入初始字符時(shí),vi 編輯器將光標(biāo)置于屏幕底部,在該處可以輸入命令中剩余的字符。按 Enter 鍵運(yùn)行子命令,或按“中斷”(Ctrl-C 按鍵順序)取消它。當(dāng) 使用 ! 前綴時(shí),光標(biāo)只在兩個(gè)感嘆號(hào)都輸入后才移動(dòng)。當(dāng)使用 : 前綴進(jìn)入最后行方式時(shí),如果在指定計(jì)數(shù)的命令之前使用以下字符,vi 編輯器賦予它們特定含義: % 所有行,而不管光標(biāo)的位置 $ 最后行 . 當(dāng)前行
7、 定制 vi 編輯器 可以根據(jù)以下方式定制 vi 編輯器: 設(shè)置編輯選項(xiàng) 定義宏 映射鍵 設(shè)置縮寫(xiě) 設(shè)置 vi 編輯器選項(xiàng) 以 下列表描述可以使用 set 命令更改的 vi 編輯器選項(xiàng)。這些選項(xiàng)的缺省設(shè)置是 off。如果打開(kāi)了這些開(kāi)關(guān)選項(xiàng)中的一個(gè),在選項(xiàng)之前輸入 no 即可重新關(guān)閉它。如果想中斷 autowrite vi 選項(xiàng),則輸入 noaw,其中 no 關(guān)閉選項(xiàng),aw 指定 autowrite 選項(xiàng)。 注: 當(dāng)輸入 vi 選項(xiàng)時(shí)不要包含圓括號(hào)。 vi 選項(xiàng)(縮寫(xiě)) 描述 autoindent(ai) 通過(guò)使用 shiftwidth 選項(xiàng)指定的制表符停止位之間的間隔,在文本輸入方式中自動(dòng)縮排
8、為前行的縮排格式。缺省是 noai。將光標(biāo)退回到前面的制表符停止位,按 Ctrl-D 快捷鍵。這個(gè)選項(xiàng)對(duì)于全局命令不起作用。 autoprin(ap) 在任何更改編輯緩沖區(qū)的命令后面打印當(dāng)前行。缺省是 ap。這個(gè)選項(xiàng)只應(yīng)用于單行上一系列命令中的最后一個(gè)命令,并且對(duì)全局命令不起作用。 autowrite(aw) 如果編輯緩沖區(qū)自上次 write 子命令以來(lái)發(fā)生更改,則在 :n 子命令、:ta 子命令、Ctrl-A 按鍵順序和 ! 子命令之前,將編輯緩沖區(qū)自動(dòng)寫(xiě)入到文件。缺省是 noaw。 beautifying text(bf) 在文本輸入(除了制表符、換行符和換頁(yè)指示符)的過(guò)程中,防止用戶(hù)在編
9、輯緩沖區(qū)中輸入控制字符。缺省是 nobf。此選項(xiàng)應(yīng)用于命令輸入。 closepunct(cp=) 處理結(jié)束標(biāo)點(diǎn)列表,特別當(dāng)文本自動(dòng)換行(wraptype 選項(xiàng))時(shí)。在多字符標(biāo)點(diǎn)前指出字?jǐn)?shù)數(shù),例如 cp=3.;) 。當(dāng)自動(dòng)換行時(shí),vi 命令不分割關(guān)閉的標(biāo)點(diǎn)。 directory(dir=) 顯示包含編輯緩沖區(qū)的目錄。缺省為 dir = /var/tmp。 edcompatible(ed) 在多重替換過(guò)程中,保留 g(全局)和 c(確認(rèn))子命令后綴,并使 r(讀取)后綴像 r 子命令一樣運(yùn)作。缺省值是 noed。 exrc(exrc) 如果未設(shè)置,則在初始化過(guò)程中忽略當(dāng)前目錄下任何 .exrc 文
10、件,除非當(dāng)前目錄是 HOME 環(huán)境變量指定的。缺省是 noexrc。 hardtabs(ht=) 告訴 vi 編輯器顯示屏幕上硬件制表符停止位之間的距離。(這個(gè)選項(xiàng)必須與基礎(chǔ)的終端或終端仿真器的制表符設(shè)置相匹配。)缺省值為 ht=8。 ignorecase(ic) 當(dāng)搜索正則表達(dá)式時(shí),忽略大寫(xiě)和小寫(xiě)之間的區(qū)別。缺省值是 noic。 linelimit(ll=) 設(shè)置最大行數(shù),如 -y 命令行選項(xiàng)。該選項(xiàng)只有和 .exrc 文件或 EXINIT 環(huán)境變量一起使用時(shí)有效。 lisp(lisp) 除去 ( ), , 和 的特殊意義,并為 s 表達(dá)式啟用 =(格式打?。┻\(yùn)算符,以便能夠編輯行處理(LI
11、SP)程序。缺省是 nolisp。 list(list) 顯示文本和制表符 (I) 和行的標(biāo)記端($)。缺省值是 nolist。 magic(magic) 當(dāng)搜索一種模式時(shí),將 .(句號(hào))、(左括號(hào))和 *(星號(hào))字符當(dāng)成特殊字符。在關(guān)閉方式中,只有 ( )(圓括號(hào))和 $(美元符)保持特殊意義。但是,可以通過(guò)在其它字符前面加上 (反斜杠)來(lái)激活其它字符的特殊意義。缺省是 magic。 mesg(mesg) 如果以可視方式設(shè)置,打開(kāi)終端的寫(xiě)入許可權(quán)。該選項(xiàng)只有和 .exrc 文件或 EXINIT 環(huán)境變量一起使用時(shí)有效。缺省值是 on。 modeline(modeline) 如果在文件開(kāi)始五行
12、或最后五行找到,則運(yùn)行 vi 編輯器命令行。一行 vi 編輯器命令可以位于行中的任意位置。為了便于 vi 編輯器能辨認(rèn)命令行,這一行必須包含一個(gè)空格或制表符,后跟 ex: 或 vi: 字符串。命令行以第二個(gè) :(冒號(hào))結(jié)束。vi 編輯器嘗試將第一個(gè)和第二個(gè)冒號(hào)之間的任意數(shù)據(jù)解釋為 vi 編輯器命令。缺省為 nomodeline。 novice 指明是否處于 novice 方式。不能用 set 命令更改值。 number(nu) 顯示以行號(hào)作為前綴的行。缺省是 nonu。 optimize(opt) 加速缺少光標(biāo)尋址的終端的操作。缺省為 noopt。 paragraphs(para=) 定義開(kāi)始
13、段落的 vi 宏名。缺省為 para=IPLPPPQPP LIpplpipnpbp。如果指定了一個(gè)段落,單字母 nroff 宏,如 .P 宏,必須以加引號(hào)字符包含空格。 partialchar(pc=) 出現(xiàn)在最后的顯示列,該列中雙寬字符不完全顯示。缺省字符為 -(減號(hào))。 prompt 當(dāng)處于命令方式時(shí),通過(guò)打印 :(冒號(hào))提示輸入新的編輯器命令。缺省值為 on。 readonly(ro) 設(shè)置永久的只讀方式。缺省為 noreadonly。 redraw(redraw) 在低能工作站上模仿智能工作站。缺省為 nore。 remap 允許根據(jù)其它宏來(lái)定義宏。缺省值是 on。 report(re
14、=) 設(shè)置在消息顯示之前命令能重復(fù)的次數(shù)。對(duì)于產(chǎn)生許多消息的子命令,例如全局子命令,完成命令序列后顯示消息。缺省值為 report=5。 scroll(scr=) 設(shè)置在編輯器中上下滾動(dòng)時(shí)滾動(dòng)的行數(shù)。缺省值為窗口大小的 1/2,四舍五入。 sections(sect=) 定義開(kāi)始段落的 vi 宏名。缺省為 sect=NHSHHH HUuhsh+c。如果指定段落,單字母 nroff 宏,如 .P 宏必須以加引號(hào)字符包含空格。 shell(sh=) 為 ! 子命令或 :! 子命令定義外殼程序。缺省為登錄外殼程序。 shiftwidth(sw=) 為 autoindent 選項(xiàng)、shift 命令(&
15、gt; 和 <)和文本輸入命令(Ctrl-D 和 Ctrl-T 按鍵順序)使用的軟件制表符停止位設(shè)置間距。vi 選項(xiàng)只影響行開(kāi)始的縮排。缺省值為 sw=8。 showmatch(sm) 當(dāng)如輸入 )(右圓括號(hào))或 (右花括號(hào))時(shí)顯示 ((匹配的左圓括號(hào))或 (左花括號(hào))。缺省為 nosm。 showmode(smd) 當(dāng) vi 編輯器處于輸入方式時(shí)顯示消息加以指明。缺省為 nosmd。 slowopen(slow) 在插入期間,延遲更新顯示屏幕。缺省值為 noslow。 tabstop(ts=) 在一個(gè)顯示的文件中設(shè)置制表符停止位之間的間距。缺省值為 ts=8。 tags(tags =)
16、 為用 ctags 命令創(chuàng)建的函數(shù)名的數(shù)據(jù)庫(kù)文件定義搜索路徑。缺省值為 tags=tags /usr/lib/tags。 term(term=) 設(shè)置正在使用的工作站類(lèi)型。缺省值為 term=$TERM,其中 $TERM 是 TERM 外殼程序變量的值。 terse(terse) 允許 vi 編輯器顯示消息的短格式。缺省為 noterse。 timeout(to) 為字符的進(jìn)入設(shè)置兩秒的時(shí)間限制。當(dāng)設(shè)置 timeout 選項(xiàng)時(shí),這個(gè)限制容許作為單獨(dú)的字符輸入和處理宏中的字符。要恢復(fù)宏的使用,需要設(shè)置 notimeout 選項(xiàng)。缺省值為 to。 ttytype 為正在使用的終端指明 tty 類(lèi)型
17、。從 vi 編輯器不能更改這個(gè)值。 warn(warn) 在 ! 之前顯示警告消息。當(dāng)在編輯緩沖區(qū)中已經(jīng)作了更改,但還沒(méi)有寫(xiě)入文件時(shí),如果是第一次發(fā)送外殼程序命令,那么子命令執(zhí)行外殼程序命令。缺省為 warn。 window(wi=) 設(shè)置顯示在一個(gè)文本窗口中的行數(shù)。缺省值取決于操作時(shí)使用的波特率:600 波特或更少, 8 行;1200 波特,16 行;更高的速率,全屏減去 1 行。 wrapmargin(wm=) 設(shè)置從一行到另一行自動(dòng)換行的頁(yè)邊距。缺省值為 wm=0。0 值則關(guān)閉自動(dòng)換行。 wrapscan(ws) 允許字符串搜索從編輯緩沖區(qū)結(jié)尾到開(kāi)始有自動(dòng)換行。缺省值為 ws。 wrap
18、type(wt=) 指明用于在行尾回繞單詞的方法。缺省值為 general??梢灾付ㄏ铝兴膫€(gè)值中的一個(gè): general 允許單詞中斷處(如兩個(gè)字符之間的空白)自動(dòng)換行。此設(shè)置為缺省值。 word 允許在單詞上自動(dòng)換行。 rigid 允許在列上和關(guān)閉的標(biāo)點(diǎn)之前自動(dòng)換行。 flexible 允許在列上自動(dòng)換行,但是一個(gè)標(biāo)點(diǎn)符號(hào)可以擴(kuò)展到頁(yè)邊距外后。 writeany(wa) 關(guān)閉通常在write 子命令之前進(jìn)行的檢查。缺省值為 nowa。 要查看對(duì)缺省設(shè)置進(jìn)行更改的 vi 編輯器設(shè)置列表,請(qǐng)輸入 set 并按空格鍵。按 Enter 鍵返回到命令方式。 要查看 vi 編輯器設(shè)置的完全列表,請(qǐng)輸入
19、set all。按 Enter 鍵返回到命令方式。 要打開(kāi)一個(gè) vi 編輯器選項(xiàng), 輸入 set Option。這個(gè)命令自動(dòng)返回到命令方式。 要打開(kāi)多個(gè) vi 編輯器選項(xiàng),輸入 set Option Option Option。這命令打開(kāi)三個(gè)指定的 vi 編輯器選項(xiàng)并返回到命令方式。 要關(guān)閉一個(gè) vi 選項(xiàng),輸入 set noOption。這個(gè)命令自動(dòng)返回到命令方式。 要更改一個(gè) vi 編輯器的值,請(qǐng)輸入 set Option=Value。這個(gè)命令自動(dòng)返回到命令方式。 可以?xún)H為這個(gè)編輯會(huì)話(huà)使用 :set vi 編輯器子命令來(lái)設(shè)置選項(xiàng),或?yàn)檫@個(gè)編輯會(huì)話(huà)和所有將來(lái)的編輯會(huì)話(huà)設(shè)置選項(xiàng)。 要只為這個(gè)編
20、輯會(huì)話(huà)設(shè)置或更改 vi 編輯器選項(xiàng),從命令行輸入 :set 子命令。 要 為所有編輯會(huì)話(huà)設(shè)置 vi 選項(xiàng),將 :set 子命令置于 .profile 文件的 EXINIT 環(huán)境變量中(該文件由登錄的外殼程序讀?。┗?qū)?set 子命令置于 .exrc 文件中。vi 編輯器首先查找 EXINIT 環(huán)境變量并運(yùn)行它的命令。如果 EXINIT 環(huán)境變量不存在,則 vi 編輯器查找 $HOME/.exrc 文件并運(yùn)行它的命令。最后,不管以前的任何結(jié)果,vi 編輯器查找本地的 .exrc 文件并運(yùn)行它的命令。 注: 這個(gè)過(guò)程一直成立,除了 tvi 命令(可信的 vi)。在這種情況下,vi 編輯器查找并只運(yùn)
21、行 /etc/.exrc 文件。 要獲取通過(guò)設(shè)置 EXINIT 環(huán)境變量來(lái)更改選項(xiàng)的信息,請(qǐng)參閱 environment 文件中關(guān)于環(huán)境變量的描述。 .exrc 文件可以包含 set Option=Value; 格式的子命令,例如: set cp=3 . . ; 要在 .exrc 文件中包含注釋?zhuān)瑢?"(雙引號(hào))作為該行中的第一個(gè)字符。 定義宏 如果經(jīng)常使用一條子命令或一系列子命令,可以使用 vi 編輯器來(lái)定義發(fā)出子命令或子命令順序的宏。 要定義一個(gè)宏,輸入一系列以字母表中一個(gè)字母命名的緩沖區(qū)。小寫(xiě)字母 a 到 z 覆蓋緩沖區(qū)的內(nèi)容,大寫(xiě)字母 A 到 Z 將文本附加到緩沖區(qū)先前的內(nèi)容
22、,這樣可以逐塊構(gòu)建宏。 例如,要定義命名為 c 的宏,該宏搜索單詞 corner 并使單詞 corner 后的第三行成為當(dāng)前行,輸入以下命令: o /corner/+3 然后按 ESC 鍵并輸入以下命令: "c 其中 c 是緩沖區(qū)宏的名稱(chēng)。 要 添加文本到已定義的緩沖區(qū)中以前的內(nèi)容,輸入 o viSubcommand,按 ESC 鍵,并輸入 "CapitalLetter,其中 CapitalLetter 變量指定一個(gè)從 A 到 Z 的大寫(xiě)字母。例如,要構(gòu)建名為 T 的緩沖區(qū)宏,該宏搜索單詞 corner 并允許添加更多命令,輸入以下命令: o corner 然后按 ESC
23、鍵并輸入以下命令: "T 其中 T 是緩沖區(qū)宏的名稱(chēng)。任何時(shí)候都可以重復(fù)本過(guò)程將更多的 vi 子命令添加到相同的緩沖區(qū)。 例如,要添加移動(dòng)光標(biāo)到前面行和刪除該行的命令,輸入以下命令: o -dd 這里 -(負(fù)號(hào))意為將光標(biāo)上移一行,而 dd 表示刪除當(dāng)前行。按 ESC 鍵并輸入以下命令: "Tdd 要啟動(dòng)宏,輸入 Letter,其中 Letter 變量指定想要使用的緩沖區(qū)宏的字母名。要再使用相同的宏,輸入 (兩個(gè)位于符號(hào))。例如,輸入 T 啟動(dòng) T 緩沖區(qū)宏并運(yùn)行搜索、移動(dòng)光標(biāo)和刪除行命令。輸入 T 以再一次啟動(dòng) T 緩沖區(qū)宏。 系統(tǒng)使用的字符集通過(guò)對(duì)照表定義。該表影響 v
24、i 宏的性能。 映射鍵 可 以使用 :map、:map! 和 :ab 子命令將擊鍵操作映射到命令或命令序列。:map 子命令在命令方式中使用。:map! 和 :ab 子命令在文本輸入方式中使用??梢詾檫@個(gè)編輯會(huì)話(huà)和所有以后的編輯會(huì)話(huà)映射鍵,或者僅為當(dāng)前編輯會(huì)話(huà)(以?xún)社姺绞街械囊环N)映射鍵。 要為所有以后的編輯會(huì)話(huà)映射鍵,將子命令置于 $HOME/.exrc 文件中。vi 編輯器每次啟動(dòng),會(huì)讀取這個(gè)文件。映射保持對(duì)每一次編輯會(huì)話(huà)有效。 要僅從命令方式為當(dāng)前的編輯會(huì)話(huà)映射鍵,在 vi 編輯器會(huì)話(huà)期間啟動(dòng)子命令。要只通過(guò)文本輸入方式為當(dāng)前編輯會(huì)話(huà)映射鍵,在 vi 編輯器會(huì)話(huà)期間在命令行上輸入子命令。
25、映射保持對(duì)當(dāng)前編輯會(huì)話(huà)有效。 注 意: 如果使用的是 IBM 3161 ASCII 顯示站、IBM 3163 ASCII 顯示站或 IBM 3101 ASCII 顯示站,vi 編輯器的缺省鍵映射會(huì)導(dǎo)致數(shù)據(jù)丟失。要查看缺省映射,請(qǐng)發(fā)出 :map 子命令。ESC-J 或 Shift-J 按鍵順序產(chǎn)生特殊的問(wèn)題。這些按鍵順序從光標(biāo)的當(dāng)前位置到文件尾刪除所有的信息。為了避免問(wèn)題出現(xiàn),使用 .exrc 文件來(lái)更改這個(gè)按鍵順序。 :map、:map! 和 :ab 子命令按以下定義: :map 按命令方式定義宏。在 vi 編輯器中,:map 子命令允許通過(guò)按單一鍵來(lái)運(yùn)行指定的命令或命令序列。 要按命令方式映
26、射鍵,用空的編輯緩沖區(qū)啟動(dòng) vi 編輯器而不用 vi 命令給 vi 文件命名或在 vi 編輯器啟動(dòng)后輸入任何東西到緩沖區(qū)??梢允褂?:map 子命令完成以下任務(wù): 要將字符映射到編輯命令序列,輸入: :map Letter viSubcommand 要按命令方式取消先前映射的字符,輸入: :unmap Letter 要為命令方式顯示當(dāng)前映射列表,輸入: :map vi 編輯器不使用以下鍵,但是可以在命令方式中和 :map 子命令一起使用。 字母 s、g、K、q、V 和 v 控制鍵序列 Ctrl-A、Ctrl-K、Ctrl-O、Ctrl-T、Ctrl-W 和 Ctrl-X 符號(hào) _(下劃線(xiàn))、*
27、(星號(hào))、 (反斜杠) 和 =(等號(hào)) 盡管可以映射已被 vi 編輯使用的鍵,但只要映射有效,就無(wú)法使用鍵的常用功能。有些終端允許將命令序列映射到功能鍵。如果處于 LISP 方式,=(等號(hào))不能使用,因?yàn)樗延?vi 編輯器使用。 要映射字母 v 到命令序列,該命令序列定位的下一個(gè)出現(xiàn)的 map 單詞并將它改成單詞 MAP,請(qǐng)輸入以下命令: :map v /map<Ctrl-V><Enter>cwMAP<Ctrl-V><Esc><Ctrl-V><Enter> 前 面的示例指導(dǎo) vi 編輯器定位下一個(gè) map 的出現(xiàn)(/ma
28、p<Ctrl-V><Enter>),將 map 更改為 MAP(cwMAP),結(jié)束 change-word 子命令(<Ctrl-V><Esc>),輸入命令(<Ctrl-V><Enter>)。 注: 為了防止 vi 編輯器解釋 Enter 鍵,當(dāng)被映射時(shí),必須在前面輸入 Ctrl-V 按鍵順序。此情況對(duì) Esc、Backspace 和 Delete 鍵也成立。 要映射控制字符 Ctrl-A、Ctrl-K 和 Ctrl-O,同時(shí)按 Ctrl 鍵和相應(yīng)的字母。例如,要將 Ctrl-A 按鍵順序映射到保存文件和編輯系列中下一個(gè)文件
29、命令序列,輸入以下命令: :map <Ctrl-A> :w<Ctrl-V><Enter>:n<Ctrl-V><Enter> 要將映射控制字符 Ctrl-T、Ctrl-W 和 Ctrl-X,必須首先用 Ctrl-V按鍵順序序?yàn)樗鼈冝D(zhuǎn)義。 要映射 |(管道符),首先必須用兩個(gè) Ctrl-V 按鍵順序?yàn)樗D(zhuǎn)義,這通過(guò)以下示例說(shuō)明:將字符 g 映射到命令序列,該命令序列轉(zhuǎn)義到外殼程序,連接文件 /etc/motd 并輸出到 wc 命令: :map g :!cat /etc/motd <Ctrl-V><Ctrl-V>|
30、wc<Ctrl-V><Enter> 如果終端允許映射功能鍵,必須用 #number 按鍵順序引用它們,以指定想映射的功能鍵的號(hào)碼。在以下示例中,F(xiàn)1 功能鍵映射到刪除單詞和將光標(biāo)下移三個(gè)單詞的命令序列: :map #1 dwwww 為 了使功能鍵映射起作用,功能鍵給終端類(lèi)型的輸出必須和 terminfo 文件中定義的輸出相匹配。這些定義由 kfnumber 條目標(biāo)志,其中,kf1 代表 F1 功能鍵,kf2 代表 F2 功能鍵,等等。如果當(dāng)按功能鍵時(shí)所獲取的輸出與這個(gè)條目不匹配,在任何映射可以發(fā)生之前,必須使用終端的設(shè)置方式去糾正設(shè)置以便和這些終端數(shù)據(jù)庫(kù)條目相匹 配。
31、也可以映射某個(gè)鍵盤(pán)特殊鍵,如 Home、End、Page Up 和 Page Down 鍵。對(duì)于大多數(shù)的終端,這些鍵已經(jīng)在 vi 編輯器中映射??梢酝ㄟ^(guò)使用 :map 子命令驗(yàn)證這個(gè)映射。如果這些鍵還沒(méi)有映射,可以如下使用 :map 子命令: :map <Ctrl-V><End> G :map <Ctrl-V><Home> 1G :map <Ctrl-V><PageUp> <Ctrl-F> :map <Ctrl-V><PageDown> <Ctrl-B> 要在命令方式中獲取所
32、有當(dāng)前映射,請(qǐng)輸入 :map 子命令。前面的示例顯示如下: v v /map<Ctrl-M>cwMAP<Ctrl->Ctrl-M> <Ctrl-A> <Ctrl-A> :w<Ctrl-M>:n<Ctrl-M> g g :!cat /etc/motd | wc <Ctrl-M> 注: Ctrl-V 和 Enter 按鍵順序顯示為 Ctrl-M 按鍵順序,而 Ctrl-V 和 Esc 按鍵順序顯示為 Ctrl- 按鍵順序。 :map! 當(dāng)處于文本輸入方式時(shí),將字符串映射到單個(gè)鍵。要按文本輸入方式映射鍵,用空的
33、編輯緩沖區(qū)啟動(dòng) vi 編輯器而不用 vi 命令給 vi 文件命名或在 vi 編輯器啟動(dòng)后輸入任何東西到緩沖區(qū)??梢允褂?:map! 子命令完成以下任務(wù): 要按文本輸入方式映射一個(gè)字母到一個(gè)或多個(gè) vi 字符串,輸入: :map! Letter String 要在文本輸入方式中取消先前映射的字母,請(qǐng)輸入: :unmap! Letter 要顯示在文本輸入方式已映射到特殊鍵的現(xiàn)有字符串,請(qǐng)輸入: :map! 當(dāng)處于文本輸入方式時(shí),輸入映射鍵處理指定的字符串。Ctrl-V 和 Esc 按鍵順序進(jìn)入命令方式 ,回到當(dāng)前單詞的開(kāi)始(bbw),并啟動(dòng) cw(change-word)子命令。例如: :map!
34、 % <Ctrl-V><Esc>bbwcw 當(dāng)輸入文本時(shí),如果意識(shí)到已經(jīng)輸錯(cuò)了一個(gè)單詞,可以通過(guò)按 %(百分號(hào))鍵并重新輸入這個(gè)單詞。編輯器自動(dòng)返回到插入方式。 注: 當(dāng)選擇將用于 :map! 子命令的鍵時(shí)要特別當(dāng)心。一旦鍵已映射,除非先發(fā)出 :unmap! 子命令,它們就不能再按文本輸入。 :ab 將鍵或按鍵順序映射到字符串以用于文本輸入方式。當(dāng)輸入具有幾個(gè)重復(fù)的短句、名稱(chēng)或標(biāo)題時(shí),:ab 子命令十分有用。 以下示例將 city 替換為短句 Austin, Texas 78759,只要它是用文本輸入方式輸入并緊跟一個(gè)空格、句號(hào)或冒號(hào): :ab city Austin,
35、 Texas 78759 例如,如果在輸入文本時(shí),輸入以下內(nèi)容: My current residence is city. 按 Tab 鍵擴(kuò)展單詞 city 用于閱讀: My current residence is Austin, Texas 78759. 縮寫(xiě)在單詞中不擴(kuò)展。例如,如果輸入 My current residence iscity,單詞 iscity 不擴(kuò)展。 如 果 :map! 子命令用于映射縮寫(xiě)用于插入方式,則出現(xiàn)的所有縮寫(xiě)都被擴(kuò)展,而不管它出現(xiàn)在什么位置。如果在前面的示例中使用 :map! 子命令(:map! city Austin, Texas 78759),那么無(wú)
36、論什么時(shí)候輸入單詞 city,無(wú)論前面和后面是什么,這個(gè)單詞將擴(kuò)展為 Austin, Texas 78759。因此,單詞 iscity 成為 isAustin, Texas 78759。 注: 當(dāng)選擇用于 :ab 子命令的鍵時(shí),需要小心。一旦鍵已定義,除非先發(fā)出 :unab 子命令,它們就不能再按文本輸入。 設(shè)置縮寫(xiě) set 命令具有與 map! 命令類(lèi)似的行為,除了 set 命令僅當(dāng)縮寫(xiě)是單個(gè)單詞時(shí)以縮寫(xiě)形式代替字符串??梢允褂?vi 編輯器的 set 命令完成以下任務(wù): 列出現(xiàn)有的縮寫(xiě) 除去縮寫(xiě) 設(shè)置(定義)縮寫(xiě) 注: 用空編輯緩沖區(qū)啟動(dòng) vi 編輯器。不要用 vi 命令給 vi 文件命名
37、或在 vi 編輯器啟動(dòng)后輸入任何東西到緩沖區(qū)。按 Esc 鍵以確保處于命令方式。 要列出縮寫(xiě) 輸入 :ab 命令來(lái)列出現(xiàn)有的縮寫(xiě)。按 Enter 鍵返回到命令方式。 要除去縮寫(xiě) 輸入 :anab Abbreviation 命令以除去縮寫(xiě),其中 Abbreviation 變量指定不再想縮寫(xiě)的字符串。 要設(shè)置(定義)縮寫(xiě) 輸入 :ab Abbreviation String 命令來(lái)設(shè)置縮寫(xiě),其中 Abbreviation 變量指定定義為縮寫(xiě)的字符串,而 String 變量指定被縮寫(xiě)的字符串。 只有當(dāng)縮寫(xiě)是單獨(dú)的單詞時(shí),縮寫(xiě)可以替代字符串。 例如, 如果輸入 :ab kn upper 命令,然后當(dāng)處
38、于文本輸入方式時(shí)輸入 acknowledge,因?yàn)閱卧~ acknowledge 中的 kn 字符串不是單獨(dú)的單詞,所以不啟動(dòng) set 命令 :ab abbreviation string 命令。 然而,如果輸入 :ab kn upper命令,然后當(dāng)處于文本輸入方式時(shí),輸入 make the kn line all kncase,結(jié)果是 make the upper line all uppercase。 標(biāo)志 -cSubcommand 在開(kāi)始查看 vi 之前,執(zhí)行 ex 編輯器子命令。光標(biāo)移到被最近執(zhí)行的命令影響的行。當(dāng)輸入一個(gè)空操作數(shù)時(shí),如 -c' ',vi 編輯器將光標(biāo)置于
39、文件的第一行。-c 標(biāo)志不能與 + 標(biāo)志兼容。不要同時(shí)指定這兩個(gè)標(biāo)志。 -l 用 LISP 方式進(jìn)入 vi 編輯器。在這種方式中,vi 編輯器適當(dāng)?shù)貫?LISP 代碼創(chuàng)建縮排,(, ), , , 和 子命令被修改以便正確地為 LISP 進(jìn)行操作。 -rFile 在 vi 編輯器或系統(tǒng)故障之后恢復(fù)文件。如果不指定 File 變量, vi 編輯器顯示所有保存過(guò)的文件列表。 -R 設(shè)置只讀選項(xiàng)以保護(hù)文件使其不被覆蓋。 -tTag 編輯包含 Tag 變量的文件并將 vi 編輯器定位于它的定義。要使用該標(biāo)志,必須首先使用 ctags 命令創(chuàng)建一個(gè)函數(shù)名及它們位置的數(shù)據(jù)庫(kù)。 -v 用詳細(xì)方式進(jìn)入 vi 編
40、輯器。 -wNumber 將缺省窗口大小設(shè)置為 Number 變量指定的值。當(dāng)在低速線(xiàn)路上使用 vi 編輯器時(shí),這個(gè)標(biāo)志十分有用。 -yNumber 用任何大于 1024 的值覆蓋 1,048,560 的最大行設(shè)置。由于 vi 編輯器為緩沖區(qū)控制使用額外的行,請(qǐng)求的行數(shù)應(yīng)該是需要的兩倍。 +Subcommand 在開(kāi)始編輯之前,執(zhí)行 ex 編輯器子命令。如果沒(méi)有指定 Subcommand 變量,光標(biāo)將置于文件的首行。這個(gè) + 標(biāo)志與 -c 標(biāo)志不兼容。不要同時(shí)指定這兩個(gè)標(biāo)志。 vi 常規(guī)子命令語(yǔ)法 使用以下常規(guī)語(yǔ)法來(lái)輸入子命令: Named_Buffer Operator Number Obj
41、ect 注: 方括號(hào)標(biāo)識(shí)任選項(xiàng)。 Named_Buffer 指定臨時(shí)文本存儲(chǔ)區(qū)域。 Operator 指定子命令或操作;指導(dǎo) vi 編輯器。 Number 將操作范圍或行地址指定為一個(gè)整數(shù)。 Object 指定操作對(duì)象,如文本對(duì)象(字符、單詞、句子、段落、節(jié)、字符串)或文本位置(一行、在當(dāng)前行中的位置、屏幕位置)。 在子命令之前計(jì)數(shù) 可以在許多子命令前放一個(gè)數(shù)字。vi 編輯器以下面方式中的一種解釋這個(gè)數(shù)字: 轉(zhuǎn)至由 Number 參數(shù)指定的行: 5G 10Z 轉(zhuǎn)至由 Number 參數(shù)指定的列。 25| 上下滾動(dòng)由 Number 參數(shù)指定的行數(shù): 10Ctrl-U 10Ctrl-D vi 編輯
42、器子命令 使用子命令執(zhí)行以下種類(lèi)的操作: 移動(dòng)光標(biāo) 編輯文本 控制文件 其它操作 移動(dòng)光標(biāo) 按以下方式使用子命令在文件內(nèi)移動(dòng)光標(biāo): 在行內(nèi)移動(dòng) 按字符位置在行內(nèi)移動(dòng) 移到單詞 按行位置移動(dòng) 移到句、段落或節(jié) 通過(guò)重繪屏幕移動(dòng) 翻頁(yè)和滾動(dòng) 搜索模式 在文件中標(biāo)記特殊位置并返回 在行內(nèi)移動(dòng) 在命令方式輸入以下命令??梢酝ㄟ^(guò)按 Esc 鍵取消不完整的命令。如果需要關(guān)于 vi 子命令格式的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 左箭頭或 h 或 Ctrl-H 將光標(biāo)向左移動(dòng)一個(gè)字符。 下箭頭或 j 或 Ctrl-J 或 Ctrl-N 將光標(biāo)向下移動(dòng)一行(它保持在同一列)。 上箭頭或 k 或 Ctrl-
43、P 將光標(biāo)向上移動(dòng)一行(它保持在同一列)。 右箭頭或 l 將光標(biāo)向右移動(dòng)一個(gè)字符。 按字符位置在行中移動(dòng) 在命令方式輸入以下命令??梢酝ㄟ^(guò)按 Esc 鍵取消不完整的命令。如果需要關(guān)于 vi 子命令格式的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 將光標(biāo)移到第一個(gè)非空字符。 0 將光標(biāo)移到行的開(kāi)始。 $ 將光移到行尾。 fx 將光標(biāo)移到下一個(gè) x 字符。 Fx 將光標(biāo)移到最后一個(gè) x 字符。 tx 將光標(biāo)移到下一個(gè) x 字符的前一列。 Tx 將光標(biāo)移到下一個(gè) x字符的后一列。 ; 重復(fù)最近的 f、F、t 或 T 子命令。 , 以反方向重復(fù)最近的 f、F、t 或 T 子命令。 Number| 將光標(biāo)移
44、到指定列。 移到單詞 在命令方式輸入以下命令。如果需要關(guān)于 vi 子命令格式的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 w 將光標(biāo)移到下一個(gè)小字。 b 將光標(biāo)移到前一個(gè)小字。 e 將光標(biāo)移到小字的倒數(shù)第二個(gè)字母。 W 將光標(biāo)移到下一個(gè)大字。 B 將光標(biāo)移到前一個(gè)大字。 E 將光標(biāo)移到大字的倒數(shù)第二個(gè)字母。 按行位置移動(dòng) 在命令方式輸入以下命令。如果需要有關(guān) vi 子命令的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 H 將光標(biāo)移到屏幕的頂行。 L 將光標(biāo)移到屏幕的最后一行。 M 將光標(biāo)移到屏幕的中間行。 + 將光標(biāo)移到它的第一個(gè)非空字符的下一行。 - 將光標(biāo)移到它的第一個(gè)非空字符的前一行。 Enter
45、 將光標(biāo)移到它的第一個(gè)非空字符的下一行。 移到句、段落或節(jié) 在命令方式輸入以下命令??梢酝ㄟ^(guò)按 Esc 鍵取消不完整的子命令。如果需要關(guān)于 vi 子命令格式的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 ( 將光標(biāo)置于前一句的開(kāi)始,或前一個(gè) s表達(dá)式(如果處于 LISP 方式)。 ) 將光標(biāo)置于下一句的開(kāi)始,或下一個(gè) s表達(dá)式(如果處于 LISP 方式)。 將光標(biāo)置于前一個(gè)段落的開(kāi)始,或下一個(gè)列表(如果處于 LISP 方式)。 將光標(biāo)置于下一個(gè)段落的開(kāi)始,如果處于 C 方式,則置于下一節(jié),或者如果處于 LISP 方式則置于下一列表。 將光標(biāo)置于下一節(jié),或者函數(shù)(如果處于 LISP 方式)。 將光標(biāo)置
46、于前一節(jié),或者函數(shù)(如果處于 LISP 方式)。 通過(guò)重繪屏幕移動(dòng) 在命令方式輸入以下命令??梢酝ㄟ^(guò)按 Esc 鍵取消不完整的子命令。如果需要關(guān)于 vi 子命令格式的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 z 用當(dāng)前行重繪屏幕頂部。 z- 用當(dāng)前行重繪屏幕底部。 z. 用當(dāng)前行重繪屏幕中間。 /Pattern/z- 用包含由 Pattern 參數(shù)指定的字符串的行重繪屏幕底部。 翻頁(yè)和滾動(dòng) 在命令方式輸入以下命令??梢酝ㄟ^(guò)按 Esc 鍵取消不完整的子命令。如果需要關(guān)于 vi 子命令格式的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 Ctrl-U 向上滾動(dòng) 1/2 屏幕。 Ctrl-D 向下滾動(dòng) 1/2
47、 屏幕。 Ctrl-F 向前滾動(dòng)一個(gè)屏幕。 Ctrl-B 向后滾動(dòng)一個(gè)屏幕。 Ctrl-E 將窗口向下滾動(dòng)一行。 Ctrl-Y 將窗口向上滾動(dòng)一行。 z+ 向上翻頁(yè) z 向下翻頁(yè) 搜索模式 在命令方式輸入以下命令??梢酝ㄟ^(guò)按 Esc 鍵取消不完整的子命令。如果需要關(guān)于 vi 子命令格式的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 NumberG 將光標(biāo)置于由 Number 參數(shù)指定的行號(hào),或者最后一行(如果沒(méi)有指定 Number 參數(shù))。 /Pattern 將光標(biāo)置于包含由 Pattern 參數(shù)指定的字符串的下一行。 ?Pattern 將光標(biāo)置于包含由 Pattern 參數(shù)指定的字符串的上一行。
48、n 在同一方向重復(fù)上次對(duì) Pattern 參數(shù)指定的文本的搜索。 N 在相反方向重復(fù)上次對(duì) Pattern 參數(shù)指定的文本的搜索。 /Pattern/+Number 將光標(biāo)置于在與 Pattern 參數(shù)指定字符串相匹配的行的后面指定的行數(shù)。 ?Pattern?-Number 將光標(biāo)置于在與 Pattern 參數(shù)指定字符串相匹配的行的前面指定的行數(shù)。 % 查找與當(dāng)前光標(biāo)位置的括號(hào)或大括號(hào)相匹配的括號(hào)或大括號(hào)。 編輯文本 用于編輯的子命令使您能執(zhí)行以下任務(wù): 在文件中標(biāo)記具體位置并返回 添加文本到文件 當(dāng)處于輸入方式時(shí)更改文本 從命令方式更改文本 復(fù)制和移動(dòng)文本 恢復(fù)和重復(fù)更改 在文件中標(biāo)記具體位
49、置并返回 在命令方式輸入以下命令??梢酝ㄟ^(guò)按 Esc 鍵取消不完整的子命令。如果需要關(guān)于 vi 子命令格式的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 " 將光標(biāo)移到當(dāng)前行的前一位置。 " 將光標(biāo)移到包含當(dāng)前行前一位置的行的開(kāi)始。 mx 用 x 參數(shù)指定的字母標(biāo)記當(dāng)前位置。 x 將光標(biāo)移到由 x 參數(shù)指定的標(biāo)記。 'x 將光標(biāo)移到包含由 x 參數(shù)指定的標(biāo)記的行的開(kāi)始。 添加文本到文件(文本輸入方式) 在命令方式輸入以下命令,將 vi 編輯器更改為文本輸入方式。如果需要有關(guān) vi 子命令的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 aText 在光標(biāo)后面插入由 Text 參數(shù)
50、指定的文本。按 Esc 鍵結(jié)束文本輸入方式。 AText 添加由 Text 參數(shù)指定的文本到行尾。按 Esc 鍵結(jié)束文本輸入方式。 iText 在光標(biāo)前面插入由 Text 參數(shù)指定的文本。按 Esc 鍵結(jié)束文本輸入方式。 IText 在行中的第一個(gè)非空字符前插入由 Text 參數(shù)指定的文本。按 Esc 鍵結(jié)束文本輸入方式。 o 在當(dāng)前行的下面添加一個(gè)空行。按 Esc 鍵結(jié)束文本輸入方式。 O 在當(dāng)前行的上面添加一個(gè)空行。按 Esc 鍵結(jié)束文本輸入方式。 當(dāng)處于輸入方式時(shí)更改文本 僅當(dāng)處于文本輸入方式時(shí)使用以下子命令。這些命令在命令方式中有不同的意思。如果需要關(guān)于 vi 子命令格式的信息,請(qǐng)參閱
51、“vi 常規(guī)子命令語(yǔ)法”。 Ctrl-D 回退到前一個(gè)自動(dòng)縮排停止位。 Ctrl-D 只結(jié)束該行的自動(dòng)縮排。 0Ctrl-D 將光標(biāo)退回到左頁(yè)邊。 Esc 結(jié)束插入并返回到命令狀態(tài)。 Ctrl-H 擦除上個(gè)字符。 Ctrl-Q 如果 xon 禁用則輸入任意字符。 Ctrl-V 輸入任意字符 Ctrl-W 擦除上個(gè)的小字。 引用擦除并殺死字符。 Ctrl-? 中斷和結(jié)束插入或 Ctrl-D 按鍵順序。 從命令方式更改文本 在命令方式使用以下命令??梢酝ㄟ^(guò)按 Esc 鍵取消不完整的子命令。如果需要關(guān)于 vi 子命令格式的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 C 更改行的剩余部分(同 c$ 一樣)
52、。 cc 更改一行 cw 更改一個(gè)單詞 cwText 將字更改為 Text 參數(shù)指定的文本。 D 刪除行的剩余部分(同 d$ 一樣)。 dd 刪除一行。 dw 刪除一個(gè)單詞。 J 連接行。 rx 用 x 指定的字符替換當(dāng)前字符。 RText 用 Text 參數(shù)指定的文本覆蓋字符。 s 替代字符(同 cl 一樣)。 S 替代行(同 cc 一樣)。 u 撤銷(xiāo)上次更改。 x 刪除光標(biāo)位置的字符。 X 刪除光標(biāo)前的一個(gè)字符(同 dh 一樣)。 << 將一行向左移位。 <L 將所有的行從光標(biāo)位置向左移到屏幕末尾。 >> 將一行向右移位。 >L 將所有的行從光標(biāo)位置向右
53、移到屏幕末尾。 將光標(biāo)位置的字母更改為相反的大小寫(xiě)格式。 ! 縮排 LISP。 復(fù)制和移動(dòng)文本 在命令方式使用以下命令。可以通過(guò)按 Esc 鍵取消不完整的子命令。如果需要關(guān)于 vi 子命令格式的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 p 在光標(biāo)之后將撤銷(xiāo)緩沖區(qū)中的文本還原。 P 在光標(biāo)之前將緩沖區(qū)中的文本還原。 "xp 將 x 緩沖區(qū)中的文本還原 "xd 將文本刪除到 x 緩沖區(qū)。 y 將跟隨的對(duì)象(例如 word 為w)放到撤銷(xiāo)緩沖區(qū)。 "xy 將跟隨的對(duì)象放到 x 緩沖區(qū),其中 x 為任意字母。 Y 將行放到撤銷(xiāo)緩沖區(qū)。 恢復(fù)和重復(fù)更改 在命令方式使用以下命令
54、。可以通過(guò)按 Esc 鍵取消不完整的子命令。如果需要關(guān)于 vi 子命令格式的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 u 撤銷(xiāo)最后一次更改。 注: 撤銷(xiāo)后,光標(biāo)移到更新過(guò)的當(dāng)前行的第一個(gè)非空字符。 U 如果最后一次更改以來(lái)光標(biāo)還沒(méi)有離開(kāi)行,則恢復(fù)當(dāng)前行。 . 重復(fù)上次更改或增加 "np 命令。 注: 這條子命令將重復(fù)最后一次的更改,包括一條撤銷(xiāo)命令。因此,一次撤銷(xiāo)后,重復(fù)一次撤銷(xiāo)而不是最后一次更改。 這條子命令不是為和宏一起使用設(shè)計(jì)的。輸入 (兩個(gè)位于字符)以重復(fù)宏。 "n p 檢索完整行和行塊的倒數(shù)第 n 次刪除。 操作文件 用于操作文件的子命令允許執(zhí)行在以下各節(jié)中概述的任
55、務(wù): 將更改保存至文件 編輯另一文件 編輯一系列文件 查找文件信息 將更改保存至文件 在命令方式使用以下命令。如果需要有關(guān) vi 子命令的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 :w 將編輯緩沖區(qū)內(nèi)容寫(xiě)到原始文件中。如果正在 ex 編輯器中使用這條子命令,不必輸入 :(冒號(hào))。 :w File 將編輯緩沖區(qū)內(nèi)容寫(xiě)入由 File 參數(shù)指定的文件中。如果正在 ex 編輯器中使用這條子命令,不必輸入 :(冒號(hào))。 :w! File 用緩沖區(qū)內(nèi)容覆蓋由 File 參數(shù)指定的文件。如果正在 ex 編輯器中使用這條子命令,不必輸入 :(冒號(hào))。 編輯另一文件 在命令方式輸入以下命令。如果需要有關(guān) vi 子命令的信息,請(qǐng)參閱“vi 常規(guī)子命令語(yǔ)法”。 :e File 編輯指定文件。如果正在從 ex 編輯器使用這條子命令,不必輸入 :(冒號(hào))。 :e! 重新編輯當(dāng)前文件并廢棄所有更
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 全國(guó)教育大會(huì)解讀
- 中班安全教育教案40篇冬季
- 煤礦應(yīng)急救援應(yīng)知應(yīng)會(huì)100題課件
- 高考調(diào)研高考數(shù)學(xué)一輪復(fù)習(xí)第十章第課時(shí)
- 2024至2030年中國(guó)感光涂膠布生產(chǎn)線(xiàn)數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2024至2030年中國(guó)布飾發(fā)圈行業(yè)投資前景及策略咨詢(xún)研究報(bào)告
- 2024年四川省瀘州市中考語(yǔ)文試題含解析
- 2024年中國(guó)緊急轉(zhuǎn)動(dòng)式蘑菇鈕市場(chǎng)調(diào)查研究報(bào)告
- 2024年中國(guó)短滴狀塑料片自動(dòng)鎖市場(chǎng)調(diào)查研究報(bào)告
- 2024年中國(guó)凍兔肉排市場(chǎng)調(diào)查研究報(bào)告
- 人教版道德與法治九年級(jí)上冊(cè)5.2《凝聚價(jià)值追求》說(shuō)課稿
- 感控知識(shí)應(yīng)知應(yīng)會(huì)課件
- 大數(shù)據(jù)與會(huì)計(jì)函授專(zhuān)科畢業(yè)實(shí)習(xí)報(bào)告
- 知道網(wǎng)課智慧樹(shù)《社會(huì)學(xué)(湖南應(yīng)用技術(shù)學(xué)院)》章節(jié)測(cè)試答案
- 商砼攪拌站大方量混凝土供應(yīng)方案
- 2024年稅務(wù)考試-稅務(wù)稽查員筆試考試歷年高頻考點(diǎn)試題摘選含答案
- 食品委托配送運(yùn)輸合同范本共
- 幼兒園小班科學(xué)課件:《菊花開(kāi)了》
- 駐村干部應(yīng)知應(yīng)會(huì)試題附有答案
- 市政工程單位分部分項(xiàng)檢驗(yàn)批工程劃分表
- 教科版小學(xué)科學(xué)四上《3.3用橡皮筋驅(qū)動(dòng)小車(chē)》課件
評(píng)論
0/150
提交評(píng)論