




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、Linux下vi使用手冊a:從光標所在位置彳爰面開始新增資料,光標彳爰的資料隨新增資料向彳爰移動。A:從光標所在列最彳爰面的地方開始新增資料。插入(insert)i:從光標所在位置前面開始插入資料,光標彳爰的資料隨新增資料向彳爰移動。I:從光標所在列的第一個非空白字元前面開始插入資料。開始(open)o:在光標所在列下新增一列并進入輸入模式。O:在光標所在列上方新增一列并進入輸入模式。x:刪除光標所在字符。dd:刪除光標所在的列。r:修改光標所在字元,r彳爰接著要修正的字符。R:進入取替換狀態(tài),新增文字會覆蓋原先文字,直到按ESC回到指令模式下為止。s:刪除光標所在字元,并進入輸入模式。S:刪
2、除光標所在的列,并進入輸入模式。文件操作指令多以:開頭,這跟編輯指令有點區(qū)別。:q結(jié)束編輯(quit):q!不存檔而要放棄編輯過的文件。:w保存文件(write)其彳爰可加所要存檔的檔名。:wq即存檔彳爰離開。zz功能與:wq相同。vi或vedit命令用途用全屏顯示編輯文件。語法vi|vedit-l-R-tTag-v-wNumber-yNumber-rFile+|-cSubcommandFile.描述vi命令基于基礎ex編輯器啟動全屏編輯器。因此,ex子命令可以在vi編輯器中使用。vedit命令啟動適用于初學者的vi編輯器版本。在vedit編輯器中,報告選項設置為1,設置了showmode選項
3、和novice選項,使其成為一個行編輯器。通過指定被編輯文件名,可以啟動vi編輯器。如果在命令行上提供多個File參數(shù),vi編輯器按指定的順序編輯每一個文件?,F(xiàn)有文件的vi編輯器在屏幕底部顯示文件名、行數(shù)和字符數(shù)。在多字節(jié)語言環(huán)境的情況下,字符數(shù)必須解釋成字節(jié)數(shù)。由于vi編輯器是全屏編輯器,所以可以逐屏編輯文本。vi編輯器在編輯緩沖區(qū)為編輯的文件制作副本,并且直到保存更改文件容才會更改。光標在顯示屏幕上的位置表明它在文件中的位置,并且子命令在光標位置影響該文件。vi編輯器的局限性以下列表提供了vi編輯器的最大限度。這些計數(shù)采用單字節(jié)字符集。每行LINE_MAX個字符每全局命令列表256個字符1
4、28個字符在以前被插入和刪除的文本中128個字符在外殼程序轉(zhuǎn)義命令中128個字符在一個字符串值的選項中30個字符在一個標記名中128個映射宏,總共2048個字符1,048,560行,每行強制不能超過LINE_MAX個字符宏名和宏文本被限制在100個字符。注:對大于64MB的文件運行vi編輯器可能會顯示以下的錯誤信息:0602-103filetoolargetoplacein/tmpvi編輯方式vi編輯器按以下方式操作:命令方式當啟動vi編輯器時,它處于命令方式。您可以輸入任何子命令,除了那些指定僅用于文本輸入方式的子命令。當子命令和其它方式結(jié)束時,vi編輯器返回命令方式。按Esc鍵取消子命令。
5、文本輸入方式按這種方式使用vi編輯器來添加文本。用以下任意子命令進入文本輸入方式:a子命令、A子命令、i子命令、I子命令、o子命令、O子命令、cx子命令(其中x代表子命令的圍)、C子命令、s子命令、S子命令和R子命令。輸入這些子命令中的一個后,即可輸入文本到編輯緩沖區(qū)中。要返回到命令方式,按ESC鍵以正常退出或按“中斷”(Ctrl-C按鍵順序)以非正常方式結(jié)束。最后行方式帶前綴:(冒號)、/(斜杠)、?(問號)、!(感嘆號)或!(兩個感嘆號)的子命令在屏幕底部的顯示行上讀取輸入。當輸入初始字符時,vi編輯器將光標置于屏幕底部,在該處可以輸入命令中剩余的字符。按Enter鍵運行子命令,或按“中斷
6、”(Ctrl-C按鍵順序)取消它。當使用!前綴時,光標只在兩個感嘆號都輸入后才移動。當使用:前綴進入最后行方式時,如果在指定計數(shù)的命令之前使用以下字符,vi編輯器賦予它們特定含義:%所有行,而不管光標的位置$最后行當前行定制vi編輯器可以根據(jù)以下方式定制vi編輯器:設置編輯選項定義宏映射鍵設置縮寫設置vi編輯器選項vi 編輯器選項。 這些選項的缺省設置是off 。 如果打no 即可重新關(guān)閉它。如果想中斷autowrite viaw 指定 autowrite 選項。以下列表描述可以使用set命令更改的開了這些開關(guān)選項中的一個,在選項之前輸入選項,則輸入noaw,其中no關(guān)閉選項,注:當輸入vi選
7、項時不要包含圓括號。vi選項(縮寫)描述autoindent(ai)通過使用shiftwidth選項指定的制表符停止位之間的間隔,在文本輸入方式中自動縮排為前行的縮排格式。缺省是noai。將光標退回到前面的制表符停止位,按Ctrl-D快捷鍵。這個選項對于全局命令不起作用。autoprin(ap)在任何更改編輯緩沖區(qū)的命令后面打印當前行。缺省是ap。這個選項只應用于單行上一系列命令中的最后一個命令,并且對全局命令不起作用。autowrite(aw)如果編輯緩沖區(qū)自上次write子命令以來發(fā)生更改,則在:n子命令、:ta子命令、Ctrl-A按鍵順序和!子命令之前,將編輯緩沖區(qū)自動寫入到文件。缺省是
8、noaw。beautifyingtext(bf)在文本輸入(除了制表符、換行符和換頁指示符)的過程中,防止用戶在編輯緩沖區(qū)中輸入控制字符。缺省是nobf。此選項應用于命令輸入。closepunct(cp=)處理結(jié)束標點列表,特別當文本自動換行(wraptype選項)時。在多字符標點前指出字數(shù)數(shù),例如cp=3.;)。當自動換行時,vi命令不分割關(guān)閉的標點。directory(dir=)顯示包含編輯緩沖區(qū)的目錄。缺省為dir=/var/tmp。edcompatible(ed)在多重替換過程中,保留g(全局)和c(確認)子命令后綴,并使r(讀?。┖缶Y像r子命令一樣運作。缺省值是noed。exrc(e
9、xrc)如果未設置,則在初始化過程中忽略當前目錄下任何.exrc文件,除非當前目錄是HOME環(huán)境變量指定的。缺省是noexrc。hardtabs(ht=)告訴vi編輯器顯示屏幕上硬件制表符停止位之間的距離。(這個選項必須與基礎的終端或終端仿真器的制表符設置相匹配。)缺省值為ht=8。ignorecase(ic)當搜索正則表達式時,忽略大寫和小寫之間的區(qū)別。缺省值是noic。linelimit(ll=)設置最大行數(shù),如-y命令行選項。該選項只有和.exrc文件或EXINIT環(huán)境變量一起使用時有效。lisp(lisp)除去(),和的特殊意義,并為s表達式啟用=(格式打印)運算符,以便能夠編輯行處理
10、(LISP)程序。缺省是nolisp。list(list)顯示文本和制表符I)和行的標記端($)。缺省值是nolist。magic(magic)當搜索一種模式時,將.(句號)、(左括號)和*(星號)字符當成特殊字符。在關(guān)閉方式中,只有()(圓括號)和$(美元符)保持特殊意義。但是,可以通過在其它字符前面加上(反斜杠)來激活其它字符的特殊意義。缺省是magic。mes(gmesg)如果以可視方式設置,打開終端的寫入許可權(quán)。該選項只有和.exrc文件或EXINIT環(huán)境變量一起使用時有效。缺省值是on。modeline(modeline)如果在文件開始五行或最后五行找到,則運行vi編輯器命令行。一行
11、vi編輯器命令可以位于行中的任意位置。為了便于vi編輯器能辨認命令行,這一行必須包含一個空格或制表符,后跟ex:或vi:字符串。命令行以第二個:(冒號)結(jié)束。vi編輯器嘗試將第一個和第二個冒號之間的任意數(shù)據(jù)解釋為vi編輯器命令。缺省為nomodeline。novice指明是否處于novice方式。不能用set命令更改值。number(nu)顯示以行號作為前綴的行。缺省是nonu。optimize(opt)加速缺少光標尋址的終端的操作。缺省為noopt。paragraphs(para=)定義開始段落的vi宏名。缺省為para=IPLPPPQPPLIpplpipnpbp。如果指定了一個段落,單字母
12、nroff宏,如.P宏,必須以加引號字符包含空格。partialchar(pc=)出現(xiàn)在最后的顯示列,該列中雙寬字符不完全顯示。缺省字符為-(減號)。prompt當處于命令方式時,通過打印:(冒號)提示輸入新的編輯器命令。缺省值為on。readonly(ro)設置永久的只讀方式。缺省為noreadonly。redraw(redraw)在低能工作站上模仿智能工作站。缺省為nore。remap允許根據(jù)其它宏來定義宏。缺省值是on。report(re=)設置在消息顯示之前命令能重復的次數(shù)。對于產(chǎn)生許多消息的子命令,例如全局子命令,完成命令序列后顯示消息。缺省值為report=5。scroll(scr
13、=)設置在編輯器中上下滾動時滾動的行數(shù)。缺省值為窗口大小的1/2,四舍五入。sections(sect=)定義開始段落的vi宏名。缺省為sect=NHSHHHHUuhsh+c。如果指定段落,單字母nroff宏,如.P宏必須以加引號字符包含空格。shell(sh=)為!子命令或:!子命令定義外殼程序。缺省為登錄外殼程序。shiftwidth(sw=)為autoindent選項、shift命令(>和<)和文本輸入命令(Ctrl-D和Ctrl-T按鍵順序)使用的軟件制表符停止位設置間距。vi選項只影響行開始的縮排。缺省值為sw=8。showmatch(sm)當如輸入)(右圓括號)或(右花
14、括號)時顯示(匹配的左圓括號)或(左花括號)。缺省為nosm。showmode(smd)當vi編輯器處于輸入方式時顯示消息加以指明。缺省為nosmd。slowopen(slow)在插入期間,延遲更新顯示屏幕。缺省值為noslow。tabstop(ts=)在一個顯示的文件中設置制表符停止位之間的間距。缺省值為ts=8。tags(tags=)為用ctags命令創(chuàng)建的函數(shù)名的數(shù)據(jù)庫文件定義搜索路徑。缺省值為tags=tags/usr/lib/tags。term(term=)設置正在使用的工作站類型。缺省值為term=$TERM,其中$TERM是TERM外殼程序變量的值。terse(terse)允許v
15、i編輯器顯示消息的短格式。缺省為noterse。timeout(to)為字符的進入設置兩秒的時間限制。當設置timeout選項時,這個限制容許作為單獨的字符輸入和處理宏中的字符。要恢復宏的使用,需要設置notimeout選項。缺省值為to。ttytype為正在使用的終端指明tty類型。從vi編輯器不能更改這個值。warn(warn)在!之前顯示警告消息。當在編輯緩沖區(qū)中已經(jīng)作了更改,但還沒有寫入文件時,如果是第一次發(fā)送外殼程序命令,那么子命令執(zhí)行外殼程序命令。缺省為warn。window(wi=)設置顯示在一個文本窗口中的行數(shù)。缺省值取決于操作時使用的波特率:600波特或更少,8行;1200波
16、特,16行;更高的速率,全屏減去1行。wrapmargin(wm=)設置從一行到另一行自動換行的頁邊距。缺省值為wm=0。0值則關(guān)閉自動換行。wrapscan(ws)允許字符串搜索從編輯緩沖區(qū)結(jié)尾到開始有自動換行。缺省值為ws。wraptype(wt=)指明用于在行尾回繞單詞的方法。缺省值為general。可以指定下列四個值中的一個:general允許單詞中斷處(如兩個字符之間的空白)自動換行。此設置為缺省值。word允許在單詞上自動換行。rigid允許在列上和關(guān)閉的標點之前自動換行。flexible允許在列上自動換行,但是一個標點符號可以擴展到頁邊距外后。writeany(wa)關(guān)閉通常在w
17、rite子命令之前進行的檢查。缺省值為nowa。要查看對缺省設置進行更改的vi編輯器設置列表,請輸入set并按空格鍵。按Enter鍵返回到命令方式。要查看vi編輯器設置的完全列表,請輸入setall。按Enter鍵返回到命令方式。要打開一個vi編輯器選項,輸入setOption。這個命令自動返回到命令方式。要打開多個vi編輯器選項,輸入setOptionOptionOption。這命令打開三個指定的vi編輯器選項并返回到命令方式。要關(guān)閉一個vi選項,輸入setnoOption。這個命令自動返回到命令方式。要更改一個vi編輯器的值,請輸入setOption=Value。這個命令自動返回到命令方式
18、??梢詢H為這個編輯會話使用:setvi編輯器子命令來設置選項,或為這個編輯會話和所有將來的編輯會話設置選項。要只為這個編輯會話設置或更改vi編輯器選項,從命令行輸入:set子命令。要為所有編輯會話設置vi選項,將:set子命令置于.profile文件的EXINIT環(huán)境變量中(該文件由登錄的外殼程序讀?。┗?qū)et子命令置于.exrc文件中。vi編輯器首先查找EXINIT環(huán)境變量并運行它的命令。如果EXINIT環(huán)境變量不存在,則vi編輯器查找$HOME/.exrc文件并運行它的命令。最后,不管以前的任何結(jié)果,vi編輯器查找本地的.exrc文件并運行它的命令。注:這個過程一直成立,除了tvi命令(
19、可信的vi)。在這種情況下,vi編輯器查找并只運行/etc/.exrc文件。要獲取通過設置EXINIT環(huán)境變量來更改選項的信息,請參閱environment文件中關(guān)于環(huán)境變量的描述。.exrc文件可以包含setOption=Value;格式的子命令,例如:setcp=3.;要在.exrc文件中包含注釋,將"(雙引號)作為該行中的第一個字符。定義宏如果經(jīng)常使用一條子命令或一系列子命令,可以使用vi編輯器來定義發(fā)出子命令或子命令順序的宏。要定義一個宏,輸入一系列以字母表中一個字母命名的緩沖區(qū)。小寫字母a到z覆蓋緩沖區(qū)的容,大寫字母A到Z將文本附加到緩沖區(qū)先前的容,這樣可以逐塊構(gòu)建宏。例如
20、,要定義命名為c的宏,該宏搜索單詞corner并使單詞corner后的第三行成為當前行,輸入以下命令:o/corner/+3然后按ESC鍵并輸入以下命令:"c其中c是緩沖區(qū)宏的名稱。要添加文本到已定義的緩沖區(qū)中以前的容,輸入oviSubcommand,按ESC鍵,并輸入"CapitalLetter,其中CapitalLetter變量指定一個從A到Z的大寫字母。例如,要構(gòu)建名為T的緩沖區(qū)宏,該宏搜索單詞corner并允許添加更多命令,輸入以下命令:ocorner然后按ESC鍵并輸入以下命令:"Tvi 子命令添加到相同的緩沖其中T是緩沖區(qū)宏的名稱。任何時候都可以重復本
21、過程將更多的區(qū)。例如,要添加移動光標到前面行和刪除該行的命令,輸入以下命令:o-dd這里-(負號)意為將光標上移一行,而dd表示刪除當前行。按ESC鍵并輸入以下命令:"Tdd要啟動宏,輸入Letter,其中Letter變量指定想要使用的緩沖區(qū)宏的字母名。要再使用相同的宏,輸入(兩個位于符號)。例如,輸入T啟動T緩沖區(qū)宏并運行搜索、移動光標和刪除行命令。輸入T以再一次啟動T緩沖區(qū)宏。系統(tǒng)使用的字符集通過對照表定義。該表影響vi宏的性能。映射鍵可以使用:map、:map!和:ab子命令將擊鍵操作映射到命令或命令序列。:map子命令在命令方式中使用。:map!和:ab子命令在文本輸入方式中
22、使用。可以為這個編輯會話和所有以后的編輯會話映射鍵,或者僅為當前編輯會話(以兩鐘方式中的一種)映射鍵。要為所有以后的編輯會話映射鍵,將子命令置于$HOME/.exrc文件中。vi編輯器每次啟動,會讀取這個文件。映射保持對每一次編輯會話有效。要僅從命令方式為當前的編輯會話映射鍵,在vi編輯器會話期間啟動子命令。要只通過文本輸入方式為當前編輯會話映射鍵,在vi編輯器會話期間在命令行上輸入子命令。映射保持對當前編輯會話有效。注意:如果使用的是IBM3161ASCII顯示站、IBM3163ASCII顯示站或IBM3101ASCII顯示站,vi編輯器的缺省鍵映射會導致數(shù)據(jù)丟失。要查看缺省映射,請發(fā)出:m
23、ap子命令。ESC-J或Shift-J按鍵順序產(chǎn)生特殊的問題。這些按鍵順序從光標的當前位置到文件尾刪除所有的信息。為了避免問題出現(xiàn),使用.exrc文件來更改這個按鍵順序。:map、:map!和:ab子命令按以下定義::map按命令方式定義宏。在vi編輯器中,:map子命令允許通過按單一鍵來運行指定的命令或命令序列。要按命令方式映射鍵,用空的編輯緩沖區(qū)啟動vi編輯器而不用vi命令給vi文件命名或在vi編輯器啟動后輸入任何東西到緩沖區(qū)??梢允褂?map子命令完成以下任務:要將字符映射到編輯命令序列,輸入::mapLetterviSubcommand要按命令方式取消先前映射的字符,輸入::unmap
24、Letter要為命令方式顯示當前映射列表,輸入::map:map 子命令一起使用。vi編輯器不使用以下鍵,但是可以在命令方式中和字母 s 、 g、 K、 q、控制鍵序列 Ctrl-A符號 _ (下劃線)、盡管可以映射已被、 Ctrl-K 、 Ctrl-O* (星號)、 (vi 編輯使用的鍵,、 Ctrl-T反斜杠 )、 Ctrl-W 和 Ctrl-X和 = (等號)許將命令序列映射到功能鍵。如果處于器使用。但只要映射有效, 就無法使用鍵的常用功能。 有些終端允LISP 方式, =(等號)不能使用,因為它已由 vi 編輯要映射字母v到命令序列,該命令序列定位的下一個出現(xiàn)的map單詞并將它改成單詞
25、MAP,請輸入以下命令::mapv/map<Ctrl-V><Enter>cwMAP<Ctrl-V><Esc><Ctrl-V><Enter>前面的示例指導vi編輯器定位下一個map的出現(xiàn)(/map<Ctrl-V><Enter>),將map更改為MAP(cwMAP,結(jié)束change-word子命令<<Ctrl-V><Esc>),輸入命令<<Ctrl-V><Enter>)<注:為了防止vi編輯器解釋Enter鍵,當被映射時,必須在前面輸入C
26、trl-V按鍵順序。此情況對Esc、Backspace和Delete鍵也成立。要映射控制字符Ctrl-A、Ctrl-K和Ctrl-O,同時按Ctrl鍵和相應的字母。例如,要將Ctrl-A按鍵順序映射到保存文件和編輯系列中下一個文件命令序列,輸入以下命令::map<Ctrl-A>:w<Ctrl-V><Enter>:n<Ctrl-V><Enter>要將映射控制字符Ctrl-T、Ctrl-W和Ctrl-X,必須首先用Ctrl-V按鍵順序序為它們轉(zhuǎn)義。要映射|(管道符),首先必須用兩個Ctrl-V按鍵順序為它轉(zhuǎn)義,這通過以下示例說明:將字符g
27、映射到命令序列,該命令序列轉(zhuǎn)義到外殼程序,連接文件/etc/motd并輸出到wc命令::mapg:!cat/etc/motd<Ctrl-V><Ctrl-V>|wc<Ctrl-V><Enter>如果終端允許映射功能鍵,必須用#number按鍵順序引用它們,以指定想映射的功能鍵的。在以下示例中,F(xiàn)1功能鍵映射到刪除單詞和將光標下移三個單詞的命令序列::map#1dwwww為了使功能鍵映射起作用,功能鍵給終端類型的輸出必須和terminfo文件中定義的輸出相匹配。這些定義由kfnumber條目標志,其中,kf1代表F1功能鍵,kf2代表F2功能鍵,等等
28、。如果當按功能鍵時所獲取的輸出與這個條目不匹配,在任何映射可以發(fā)生之前,必須使用終端的設置方式去糾正設置以便和這些終端數(shù)據(jù)庫條目相匹配。也可以映射某個鍵盤特殊鍵,如Home、End、PageUp和PageDown鍵。對于大多數(shù)的終端,這些鍵已經(jīng)在vi編輯器中映射??梢酝ㄟ^使用:map子命令驗證這個映射。如果這些鍵還沒有映射,可以如下使用:map子命令::map<Ctrl-V><End>G:map<Ctrl-V><Home>1G:map<Ctrl-V><PageUp><Ctrl-F>:map<Ctrl-V&
29、gt;<PageDown><Ctrl-B>:map 子命令。前面的示例顯示如下:要在命令方式中獲取所有當前映射,請輸入vv/map<Ctrl-M>cwMAP<Ctrl->Ctrl-M><Ctrl-A><Ctrl-A>:w<Ctrl-M>:n<Ctrl-M>gg:!cat/etc/motd|wc<Ctrl-M>注:Ctrl-V和Enter按鍵順序顯示為Ctrl-M按鍵順序,而Ctrl-V和Esc按鍵順序顯示為Ctrl-按鍵順序。:map!當處于文本輸入方式時,將字符串映射到單個鍵。要
30、按文本輸入方式映射鍵,用空的編輯緩沖區(qū)啟動vi編輯器而不用vi命令給vi文件命名或在vi編輯器啟動后輸入任何東西到緩沖區(qū)??梢允褂?map!子命令完成以下任務:要按文本輸入方式映射一個字母到一個或多個vi字符串,輸入::map!LetterString要在文本輸入方式中取消先前映射的字母,請輸入::unmap!Letter要顯示在文本輸入方式已映射到特殊鍵的現(xiàn)有字符串,請輸入::map!當處于文本輸入方式時,輸入映射鍵處理指定的字符串。Ctrl-V和Esc按鍵順序進入命令方式,回到當前單詞的開始(bbw),并啟動cw(change-word)子命令。例如::map!%<Ctrl-V>
31、;<Esc>bbwcw當輸入文本時,如果意識到已經(jīng)輸錯了一個單詞,可以通過按%(百分號)鍵并重新輸入這個單詞。編輯器自動返回到插入方式。注:當選擇將用于:map!子命令的鍵時要特別當心。一旦鍵已映射,除非先發(fā)出:unmap!子命令,它們就不能再按文本輸入。:ab將鍵或按鍵順序映射到字符串以用于文本輸入方式。當輸入具有幾個重復的短句、名稱或標題時,:ab子命令十分有用。以下示例將city替換為短句Austin,Texas78759,只要它是用文本輸入方式輸入并緊跟一個空格、句號或冒號::abcityAustin,Texas78759例如,如果在輸入文本時,輸入以下容:Mycurren
32、tresidenceiscity.按Tab鍵擴展單詞city用于閱讀:MycurrentresidenceisAustin,Texas78759.iscity 不擴展??s寫在單詞中不擴展。例如,如果輸入Mycurrentresidenceiscity如果:map!子命令用于映射縮寫用于插入方式,則出現(xiàn)的所有縮寫都被擴展,而不管它出現(xiàn)在什么位置。如果在前面的示例中使用:map!子命令(:map!cityAustin,Texas78759),那么無論什么時候輸入單詞city,無論前面和后面是什么,這個單詞將擴展為Austin,Texas78759。因此,單詞iscity成為isAustin,Tex
33、as78759。注:當選擇用于:ab子命令的鍵時,需要小心。一旦鍵已定義,除非先發(fā)出:unab子命令,它們就不能再按文本輸入。設置縮寫set命令具有與map!命令類似的行為,除了set命令僅當縮寫是單個單詞時以縮寫形式代替字符串??梢允褂胿i編輯器的set命令完成以下任務:列出現(xiàn)有的縮寫除去縮寫設置(定義)縮寫注:用空編輯緩沖區(qū)啟動vi編輯器。不要用vi命令給vi文件命名或在vi編輯器啟動后輸入任何東西到緩沖區(qū)。按Esc鍵以確保處于命令方式。要列出縮寫輸入:ab命令來列出現(xiàn)有的縮寫。按Enter鍵返回到命令方式。要除去縮寫輸入:anabAbbreviation命令以除去縮寫,其中Abbrevi
34、ation變量指定不再想縮寫的字符串。要設置(定義)縮寫輸入:abAbbreviationString命令來設置縮寫,其中Abbreviation變量指定定義為縮寫的字符串,而String變量指定被縮寫的字符串。只有當縮寫是單獨的單詞時,縮寫可以替代字符串。例如,如果輸入:abknupper命令,然后當處于文本輸入方式時輸入acknowledge,因為單詞acknowledge中的kn字符串不是單獨的單詞,所以不啟動set命令:ababbreviationstring命令。然而,如果輸入:abknupper命令,然后當處于文本輸入方式時,輸入maketheknlineallkncase,結(jié)果是
35、maketheupperlinealluppercase。標志-cSubcommand在開始查看vi之前,執(zhí)行ex編輯器子命令。光標移到被最近執(zhí)行的命令影響的行。當輸入一個空操作數(shù)時,如-c'',vi編輯器將光標置于文件的第一行。-c標志不能與+標志兼容。不要同時指定這兩個標志。- l用LISP方式進入vi編輯器。在這種方式中,vi編輯器適當?shù)貫長ISP代碼創(chuàng)建縮排,(,),和子命令被修改以便正確地為LISP進行操作。- rFile在vi編輯器或系統(tǒng)故障之后恢復文件。如果不指定File變量,vi編輯器顯示所有保存過的文件列表。- R設置只讀選項以保護文件使其不被覆蓋。- tTa
36、g編輯包含Tag變量的文件并將vi編輯器定位于它的定義。要使用該標志,必須首先使用ctags命令創(chuàng)建一個函數(shù)名及它們位置的數(shù)據(jù)庫。-v用詳細方式進入vi編輯器。-wNumber將缺省窗口大小設置為Number變量指定的值。當在低速線路上使用vi編輯器時,這個標志十分有用。-yNumber用任何大于1024的值覆蓋1,048,560的最大行設置。由于vi編輯器為緩沖區(qū)控制使用額外的行,請求的行數(shù)應該是需要的兩倍。+Subcommand在開始編輯之前,執(zhí)行ex編輯器子命令。如果沒有指定Subcommand變量,光標將置于文件的首行。這個+標志與-c標志不兼容。不要同時指定這兩個標志。vi常規(guī)子命令
37、語法使用以下常規(guī)語法來輸入子命令:Named_BufferOperatorNumberObject注:方括號標識任選項。Named_Buffer指定臨時文本存儲區(qū)域。Operator指定子命令或操作;指導vi編輯器。Number將操作圍或行地址指定為一個整數(shù)。Object指定操作對象,如文本對象(字符、單詞、句子、段落、節(jié)、字符串)或文本位置(一行、在當前行中的位置、屏幕位置)。在子命令之前計數(shù)可以在許多子命令前放一個數(shù)字。vi編輯器以下面方式中的一種解釋這個數(shù)字:轉(zhuǎn)至由Number參數(shù)指定的行:5G10Z轉(zhuǎn)至由Number參數(shù)指定的列。25|上下滾動由Number參數(shù)指定的行數(shù):10Ctrl
38、-U10Ctrl-Dvi編輯器子命令使用子命令執(zhí)行以下種類的操作:移動光標編輯文本控制文件其它操作移動光標按以下方式使用子命令在文件移動光標:在行移動按字符位置在行移動移到單詞按行位置移動移到句、段落或節(jié)通過重繪屏幕移動翻頁和滾動搜索模式在文件中標記特殊位置并返回在行移動子命令格子命令格在命令方式輸入以下命令??梢酝ㄟ^按Esc鍵取消不完整的命令。如果需要關(guān)于vi式的信息,請參閱“vi常規(guī)子命令語法”。左箭頭或h或Ctrl-H將光標向左移動一個字符。下箭頭或j或Ctrl-J或Ctrl-N將光標向下移動一行(它保持在同一列)。上箭頭或k或Ctrl-P將光標向上移動一行(它保持在同一列)。右箭頭或l
39、將光標向右移動一個字符。按字符位置在行中移動在命令方式輸入以下命令。可以通過按Esc鍵取消不完整的命令。如果需要關(guān)于vi式的信息,請參閱“vi常規(guī)子命令語法”。人將光標移到第一個非空字符。0將光標移到行的開始。$將光移到行尾。fx將光標移到下一個x字符。Fx將光標移到最后一個x字符。tx將光標移到下一個x字符的前一列。Tx將光標移到下一個x字符的后一列。;重復最近的f、F、t或T子命令。,以反方向重復最近的f、F、t或T子命令。Number|將光標移到指定列。移到單詞在命令方式輸入以下命令。如果需要關(guān)于vi子命令格式的信息,請參閱“vi常規(guī)子命令語法”。w將光標移到下一個小字。b將光標移到前一
40、個小字。e將光標移到小字的倒數(shù)第二個字母。W將光標移到下一個大字。B將光標移到前一個大字。E將光標移到大字的倒數(shù)第二個字母。按行位置移動在命令方式輸入以下命令。如果需要有關(guān)vi子命令的信息,請參閱“vi常規(guī)子命令語法”。H將光標移到屏幕的頂行。L將光標移到屏幕的最后一行。M將光標移到屏幕的中間行。+將光標移到它的第一個非空字符的下一行。-將光標移到它的第一個非空字符的前一行。Enter將光標移到它的第一個非空字符的下一行。移到句、段落或節(jié)在命令方式輸入以下命令??梢酝ㄟ^按Esc鍵取消不完整的子命令。如果需要關(guān)于vi子命令格式的信息,請參閱“vi常規(guī)子命令語法”。(將光標置于前一句的開始,或前一
41、個s表達式(如果處于LISP方式)。)將光標置于下一句的開始,或下一個s表達式(如果處于LISP方式)。將光標置于前一個段落的開始,或下一個列表(如果處于LISP方式)。將光標置于下一個段落的開始,如果處于C方式,則置于下一節(jié),或者如果處于LISP方式則置于下一列表。將光標置于下一節(jié),或者函數(shù)(如果處于LISP方式)。將光標置于前一節(jié),或者函數(shù)(如果處于LISP方式)。通過重繪屏幕移動在命令方式輸入以下命令。可以通過按Esc鍵取消不完整的子命令。如果需要關(guān)于vi子命令格式的信息,請參閱“vi常規(guī)子命令語法”。z用當前行重繪屏幕頂部。z-用當前行重繪屏幕底部。z.用當前行重繪屏幕中間。/Patt
42、ern/z-用包含由Pattern參數(shù)指定的字符串的行重繪屏幕底部。翻頁和滾動在命令方式輸入以下命令??梢酝ㄟ^按Esc鍵取消不完整的子命令。如果需要關(guān)于vi子命令格式的信息,請參閱“vi常規(guī)子命令語法”。Ctrl-U向上滾動1/2屏幕。Ctrl-D向下滾動1/2屏幕。Ctrl-F向前滾動一個屏幕。Ctrl-B向后滾動一個屏幕。Ctrl-E將窗口向下滾動一行。Ctrl-Y將窗口向上滾動一行。z+向上翻頁zA向下翻頁搜索模式在命令方式輸入以下命令??梢酝ㄟ^按Esc鍵取消不完整的子命令。如果需要關(guān)于vi子命令格式的信息,請參閱“vi常規(guī)子命令語法”。NumberG將光標置于由Number參數(shù)指定的行
43、號,或者最后一行(如果沒有指定Number參數(shù))。/Pattern將光標置于包含由Pattern參數(shù)指定的字符串的下一行。?Pattern將光標置于包含由Pattern參數(shù)指定的字符串的上一行。n在同一方向重復上次對Pattern參數(shù)指定的文本的搜索。N在相反方向重復上次對Pattern參數(shù)指定的文本的搜索。/Pattern/+Number將光標置于在與Pattern參數(shù)指定字符串相匹配的行的后面指定的行數(shù)。?Pattern?-Number將光標置于在與Pattern參數(shù)指定字符串相匹配的行的前面指定的行數(shù)。%查找與當前光標位置的括號或大括號相匹配的括號或大括號。編輯文本用于編輯的子命令使您能
44、執(zhí)行以下任務:在文件中標記具體位置并返回添加文本到文件當處于輸入方式時更改文本從命令方式更改文本復制和移動文本恢復和重復更改在文件中標記具體位置并返回在命令方式輸入以下命令。可以通過按Esc鍵取消不完整的子命令。如果需要關(guān)于vi子命令格式的信息,請參閱“vi常規(guī)子命令語法”。"將光標移到當前行的前一位置。"將光標移到包含當前行前一位置的行的開始。mx用x參數(shù)指定的字母標記當前位置。'x將光標移到由x參數(shù)指定的標記。'x將光標移到包含由x參數(shù)指定的標記的行的開始。添加文本到文件(文本輸入方式)在命令方式輸入以下命令,將vi編輯器更改為文本輸入方式。如果需要有關(guān)
45、vi子命令的信息,請參閱“vi常規(guī)子命令語法”。aTextEsc 鍵結(jié)束文本輸入方式。Esc 鍵結(jié)束文本輸入方式。Esc 鍵結(jié)束文本輸入方式。參數(shù)指定的文本。按Esc 鍵結(jié)束文本輸入方式。鍵結(jié)束文本輸入方式。鍵結(jié)束文本輸入方式。在光標后面插入由Text參數(shù)指定的文本。按AText添加由Text參數(shù)指定的文本到行尾。按iText在光標前面插入由Text參數(shù)指定的文本。按IText在行中的第一個非空字符前插入由Texto在當前行的下面添加一個空行。按EscO在當前行的上面添加一個空行。按Esc當處于輸入方式時更改文本僅當處于文本輸入方式時使用以下子命令。這些命令在命令方式中有不同的意思。如果需要關(guān)
46、于vi子命令格式的信息,請參閱“vi常規(guī)子命令語法”。Ctrl-D回退到前一個自動縮排停止位。人Ctrl-D只結(jié)束該行的自動縮排。0Ctrl-D將光標退回到左頁邊。Esc結(jié)束插入并返回到命令狀態(tài)。Ctrl-H擦除上個字符。Ctrl-Q如果xon禁用則輸入任意字符。Ctrl-V輸入任意字符Ctrl-W擦除上個的小字。引用擦除并殺死字符。Ctrl-?中斷和結(jié)束插入或Ctrl-D按鍵順序。從命令方式更改文本在命令方式使用以下命令??梢酝ㄟ^按Esc鍵取消不完整的子命令。如果需要關(guān)于vi子命令格式的信息,請參閱“vi常規(guī)子命令語法”。C更改行的剩余部分(同c$一樣)。cc更改一行cw更改一個單詞cwTe
47、xt將字更改為Text參數(shù)指定的文本。D刪除行的剩余部分(同d$一樣)。dd刪除一行。dw刪除一個單詞。J連接行。rx用x指定的字符替換當前字符。RText用Text參數(shù)指定的文本覆蓋字符。s替代字符(同cl一樣)。S替代行(同cc一樣)。u撤銷上次更改。x刪除光標位置的字符。X刪除光標前的一個字符(同dh一樣)。<<將一行向左移位。<L將所有的行從光標位置向左移到屏幕末尾。>>將一行向右移位。>L將所有的行從光標位置向右移到屏幕末尾。將光標位置的字母更改為相反的大小寫格式。!縮排LISP。復制和移動文本在命令方式使用以下命令??梢酝ㄟ^按Esc鍵取消不完整的
48、子命令。如果需要關(guān)于vi子命令格式的信息,請參閱“vi常規(guī)子命令語法”。p在光標之后將撤銷緩沖區(qū)中的文本還原。P在光標之前將緩沖區(qū)中的文本還原。"xp將x緩沖區(qū)中的文本還原"xd將文本刪除到x緩沖區(qū)。y將跟隨的對象(例如word為w)放到撤銷緩沖區(qū)。"xy將跟隨的對象放到x緩沖區(qū),其中x為任意字母。Y將行放到撤銷緩沖區(qū)?;謴秃椭貜透脑诿罘绞绞褂靡韵旅???梢酝ㄟ^按Esc鍵取消不完整的子命令。如果需要關(guān)于vi子命令格式的信息,請參閱“vi常規(guī)子命令語法”。u撤銷最后一次更改。注:撤銷后,光標移到更新過的當前行的第一個非空字符。U如果最后一次更改以來光標還沒有離開
49、行,則恢復當前行。.重復上次更改或增加"np命令。注:這條子命令將重復最后一次的更改,包括一條撤銷命令。因此,一次撤銷后,重復一次撤銷而不是最后一次更改。這條子命令不是為和宏一起使用設計的。輸入(兩個位于字符)以重復宏。"np檢索完整行和行塊的倒數(shù)第n次刪除。操作文件用于操作文件的子命令允許執(zhí)行在以下各節(jié)中概述的任務:將更改保存至文件編輯另一文件編輯一系列文件查找文件信息將更改保存至文件在命令方式使用以下命令。如果需要有關(guān)vi子命令的信息,請參閱“vi常規(guī)子命令語法”。:w將編輯緩沖區(qū)容寫到原始文件中。如果正在ex編輯器中使用這條子命令,不必輸入:(冒號)。:wFile將編輯緩沖區(qū)容寫入由File參數(shù)指定的文件中。如果正在ex編輯器中使用這條子命令,不必輸入:(冒號)。:w!File用緩沖區(qū)容覆蓋由File參數(shù)指定的文件。如果正在ex編輯器中使用這條子命令,不必輸入:(冒號)。編輯另一文件在命令方式輸入以下命令。如果需要有關(guān)vi子命令的信息,請參閱“vi常規(guī)子命令語法”。:eFile編輯指定文件。如果正在從ex編輯器使用這條子命令,不必輸入:(冒號)。:e!重新編輯當前文件并廢棄所有更改。:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 抗震支座鋼筋施工方案
- 果園道路安全施工方案
- 二零二五年度信用卡聯(lián)名信用卡與專屬客戶關(guān)懷服務合同
- 二零二五年度勞動合同解除及競業(yè)限制合同模板
- 二零二五年度旅行社與旅行社旅游意外險合作合同
- 2025年度電子商務就業(yè)人員勞動合同范本
- 二零二五年度股權(quán)激勵計劃股份占比變更合同范本
- 二零二五年度辦公用品代理銷售服務合同
- 2025年度股東合作分紅與信息安全保障協(xié)議
- 二零二五年度辦公室文員企業(yè)財務支持聘用合同
- 重大隱患判定標準培訓課件
- 安全生產(chǎn)法律法規(guī)培訓課件1
- 教育的減法讓孩子更幸福(課件)-小學生教育主題班會通用版
- 大格子作文紙模板
- 2023低空數(shù)字航空攝影規(guī)范
- 高中學生物理學情分析【3篇】
- 中考物理一輪復習策略與方法
- 祥云財富工業(yè)園區(qū)新建鐵路專用線工程環(huán)評報告
- 急救車藥品一覽表
- 藥店換證材料
- 移動商務基礎(吳洪貴)課件 第二章 探秘移動技術(shù)
評論
0/150
提交評論