版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、使用使用Unix命令行模式高效地進行文本編輯命令行模式高效地進行文本編輯大多數(shù)大多數(shù)UNIX開發(fā)人員都選擇開發(fā)人員都選擇Emacs、vi或這兩個文本編輯應(yīng)用程序的眾多變種、分支和克隆之一。操作員通常在所選的文本編輯器中打或這兩個文本編輯應(yīng)用程序的眾多變種、分支和克隆之一。操作員通常在所選的文本編輯器中打開文件,并交互式地對文件指定和應(yīng)用更改。開文件,并交互式地對文件指定和應(yīng)用更改。但是與在文本編輯器中打開文件相比,您通??梢栽诿钚懈?/p>
2、地完成編輯工作。復(fù)雜的編輯過程可以從命令行進行編程和指定,并跨多個但是與在文本編輯器中打開文件相比,您通??梢栽诿钚懈斓赝瓿删庉嫻ぷ?。復(fù)雜的編輯過程可以從命令行進行編程和指定,并跨多個文件執(zhí)行,從而消除所有不必要的屏幕顯示、光標移動和與文件的人工交互。一種很好的策略是在手邊保留一些相關(guān)的命令行程序,以完成常見文件執(zhí)行,從而消除所有不必要的屏幕顯示、光標移動和與文件的人工交互。一種很好的策略是在手邊保留一些相關(guān)的命令行程序,以完成常見
3、的編輯工作。它們不僅可以為您節(jié)省時間(尤其是在涉及到多個文件的批處理操作中),而且您還可以在腳本中使用它們。的編輯工作。它們不僅可以為您節(jié)省時間(尤其是在涉及到多個文件的批處理操作中),而且您還可以在腳本中使用它們。用于編輯和處理文本的單命令行程序是用于編輯和處理文本的單命令行程序是Perl和AWK(以及最近的(以及最近的Ruby)語言(當(dāng)然還包括)語言(當(dāng)然還包括Shell)中有名的傳統(tǒng)功能。本文使用在)中有名的傳統(tǒng)功能。本文使用在所
4、有系統(tǒng)上都隨時可用的三個最主要的命令行編輯工具來演示基本的文本編輯技術(shù):所有系統(tǒng)上都隨時可用的三個最主要的命令行編輯工具來演示基本的文本編輯技術(shù):cat、ed和sed。下面的編輯示例首先從最簡單和最常見。下面的編輯示例首先從最簡單和最常見的構(gòu)造開始,并逐步過渡到較復(fù)雜的構(gòu)造。的構(gòu)造開始,并逐步過渡到較復(fù)雜的構(gòu)造。使用使用cat進行編輯進行編輯使用使用cat(其名稱表示(其名稱表示“連接連接”)來連接文件和標準輸入流,如清單)來連接文件和
5、標準輸入流,如清單1所示。世界上的懶鬼們還將它用作通用分頁程序所示。世界上的懶鬼們還將它用作通用分頁程序(catfile)和完整和完整的文本編輯環(huán)境的文本編輯環(huán)境(catfile)。其語法的簡單性無與倫比,而且對于文本編輯單命令行程序,它還為您提供了無需編輯器即可追加或插入文本的。其語法的簡單性無與倫比,而且對于文本編輯單命令行程序,它還為您提供了無需編輯器即可追加或插入文本的快捷方法。快捷方法。清單清單1.使用使用cat來連接文件和標
6、準輸入流來連接文件和標準輸入流$(catinput1input2input3input4)|mailxtedTedTakealookattheseexamplefiles.Thisisthefirstfile...CtrlDThisisthesecondfile...CtrlDThisisthethirdfilenotethefourthparagraphbelow...CtrlDheresthelastfile...CtrlD$將文本
7、添加到文件結(jié)尾將文本添加到文件結(jié)尾然而,懶鬼也是講策略的。當(dāng)您需要將文本追加到文件結(jié)尾時,再沒有比使用然而,懶鬼也是講策略的。當(dāng)您需要將文本追加到文件結(jié)尾時,再沒有比使用cat更快的方法了:更快的方法了:$catfilelinelinelineCtrlD$當(dāng)您在添加行時,按當(dāng)您在添加行時,按CtrlU可以刪除當(dāng)前行,按可以刪除當(dāng)前行,按CtrlZ可以掛起該過程,按可以掛起該過程,按CtrlC可以中止所有操作。當(dāng)您完成編輯時,可以在各行可
8、以中止所有操作。當(dāng)您完成編輯時,可以在各行上按上按CtrlD。(存在一些缺省的。(存在一些缺省的KnShell控制鍵,但它們適用于大多數(shù)控制鍵,但它們適用于大多數(shù)Shell和編輯模式。)和編輯模式。)如果您正在輸入的數(shù)據(jù)是從另一個窗口粘貼而來的如果您正在輸入的數(shù)據(jù)是從另一個窗口粘貼而來的X選擇,則該單命令行程序通常更快速,因為您不必調(diào)用某個編輯器、打開目標文件、移選擇,則該單命令行程序通常更快速,因為您不必調(diào)用某個編輯器、打開目標文件、
9、移動到文件末尾、粘貼選擇、保存文件然后再退出編輯器。當(dāng)您是在粘貼格式化或特殊格式化的文本,并且您希望保留該格式(因為某些文本編輯動到文件末尾、粘貼選擇、保存文件然后再退出編輯器。當(dāng)您是在粘貼格式化或特殊格式化的文本,并且您希望保留該格式(因為某些文本編輯器和編輯模式在您粘貼器和編輯模式在您粘貼X選擇時會對其進行重新格式化)時,單命令行程序也會更有用。選擇時會對其進行重新格式化)時,單命令行程序也會更有用。雖然此操作非常常見,是一項日?;?/p>
10、動,但是您必須小心使用雖然此操作非常常見,是一項日常活動,但是您必須小心使用shell操作符來追加操作符來追加重定向重定向()而不是普通重定向操作符而不是普通重定向操作符();如果您;如果您錯誤地使用了后者,則會使用原本打算追加的文本改寫文件的原有內(nèi)容。錯誤地使用了后者,則會使用原本打算追加的文本改寫文件的原有內(nèi)容。若要將一個文件的全部內(nèi)容追加到另一個文件結(jié)尾,您可以給出文件名:若要將一個文件的全部內(nèi)容追加到另一個文件結(jié)尾,您可以給出文
11、件名:$catfootnotes.txtfilev可視地顯示非打印控制字符??梢暤仫@示非打印控制字符。使用使用ed進行編輯進行編輯顧名思義,行編輯器顧名思義,行編輯器ed對輸入文件的行執(zhí)行編輯。它將整個文件讀入自己的緩沖區(qū),對該副本執(zhí)行指定的操作,并可選地將緩沖區(qū)寫到磁對輸入文件的行執(zhí)行編輯。它將整個文件讀入自己的緩沖區(qū),對該副本執(zhí)行指定的操作,并可選地將緩沖區(qū)寫到磁盤。您可以在編輯操作中指定任何數(shù)量的行,并且這些操作可以在一個序列中進
12、行組合和指定。這些事實使得盤。您可以在編輯操作中指定任何數(shù)量的行,并且這些操作可以在一個序列中進行組合和指定。這些事實使得ed成為在腳本中使用的理想選擇。成為在腳本中使用的理想選擇。以如下格式指定操作:以如下格式指定操作:[address]comm[text]address指定要處理的一行或多行(缺省為當(dāng)前行),并且可以通過多種方式進行指定。單字符的指定要處理的一行或多行(缺省為當(dāng)前行),并且可以通過多種方式進行指定。單字符的comm是
13、要對指定行執(zhí)行的操作。是要對指定行執(zhí)行的操作。對于腳本中的特別單命令行程序,可以使用對于腳本中的特別單命令行程序,可以使用echo將一組命令和文本管道傳輸給將一組命令和文本管道傳輸給ed,從而以非交互式的方式使用它。,從而以非交互式的方式使用它。(echoOPERATIONechoOPERATION...echowq)|edsFILENAME如果在操作中輸入文本,應(yīng)該回顯一個句點如果在操作中輸入文本,應(yīng)該回顯一個句點(.)來指示輸入結(jié)束
14、。最后的來指示輸入結(jié)束。最后的wq寫入文件并退出。寫入文件并退出。s選項使選項使ed靜默地操作,并禁止所有靜默地操作,并禁止所有正常輸出。正常輸出。幸運的是,幸運的是,ed的基本尋址方法和命令是相當(dāng)標準化的。表的基本尋址方法和命令是相當(dāng)標準化的。表2描述了主要的尋址形式。表描述了主要的尋址形式。表3給出了命令。給出了命令。表2.在ed中對行尋址中對行尋址選項選項描述描述.此選項對當(dāng)前行尋址(缺省地址)。此選項對當(dāng)前行尋址(缺省地址)。n
15、umber此選項對第此選項對第number行尋址??梢园炊禾柗指舻姆秶袑ぶ???梢园炊禾柗指舻姆秶?firstlast)對行尋址。對行尋址。0代表緩沖區(qū)的開頭(第一行之前)。代表緩沖區(qū)的開頭(第一行之前)。number此選項對當(dāng)前行之前的第此選項對當(dāng)前行之前的第number行尋址。如果沒有行尋址。如果沒有number,則減號對緊跟在當(dāng)前行之前的行尋址。,則減號對緊跟在當(dāng)前行之前的行尋址。number此選項對當(dāng)前行之后的第此選項對當(dāng)前行之
16、后的第number行尋址。如果沒有行尋址。如果沒有number,則加號對緊跟在當(dāng)前行之后的行尋址。,則加號對緊跟在當(dāng)前行之后的行尋址。$此選項對最后一行尋址。此選項對最后一行尋址。此選項對第一至最后一行尋址,包括第一行和最后一行(與此選項對第一至最后一行尋址,包括第一行和最后一行(與1$相同)。相同)。此選項對當(dāng)前行至最后一行尋址。此選項對當(dāng)前行至最后一行尋址。pattern此選項對下一個包含與此選項對下一個包含與pattern匹配的文
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 組策略命令行工具使用之gpotool
- 執(zhí)行命令行為研究.pdf
- 命令行中的數(shù)據(jù)科學(xué)-_0
- DNS命令行插件的設(shè)計與實現(xiàn).pdf
- 通用命令行模塊的設(shè)計及實現(xiàn).pdf
- unix系統(tǒng)命令使用
- 公務(wù)員執(zhí)行命令行為問題研究.pdf
- 基于命令行網(wǎng)上商店管理系統(tǒng)的設(shè)計
- 基于Web的命令行的研究與實現(xiàn).pdf
- 文本編輯器
- 命令行程序測評框架的研究與應(yīng)用.pdf
- tinet s2024ei-s命令行參考手冊
- unix新手指南第2部分vi文本編輯器
- VSAN網(wǎng)絡(luò)中FCoE模塊的命令行功能的設(shè)計與實現(xiàn).pdf
- 基于SAPI引擎的文本編輯工具中語音命令的應(yīng)用研究.pdf
- 基于命令行編程的嵌入式顯卡的研究和實現(xiàn).pdf
- 文本編輯器課程設(shè)計
- 文本編輯和串查找統(tǒng)計系統(tǒng)
- 常用unix命令
- 畢業(yè)論范文——android文本編輯軟件
評論
0/150
提交評論