linux中重定向、管道和vi命令的使用(課堂PPT)_第1頁(yè)
linux中重定向、管道和vi命令的使用(課堂PPT)_第2頁(yè)
linux中重定向、管道和vi命令的使用(課堂PPT)_第3頁(yè)
linux中重定向、管道和vi命令的使用(課堂PPT)_第4頁(yè)
linux中重定向、管道和vi命令的使用(課堂PPT)_第5頁(yè)
已閱讀5頁(yè),還剩30頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1 重定向和管道文件重定向和管道文件2 輸入輸入/輸出重定向輸出重定向3輸入輸入/輸出重定向輸出重定向 同標(biāo)準(zhǔn)I/O一樣,Unix Shell對(duì)于每一個(gè)進(jìn)程預(yù)先定義3個(gè)文件描述字(0、1、2)。分別對(duì)應(yīng)于:0(STDIN_FILENO):標(biāo)準(zhǔn)輸入;1 (STDOUT_FILENO) :標(biāo)準(zhǔn)輸出;2 (STDERR_FILENO) :標(biāo)準(zhǔn)出錯(cuò)輸出。4重定向重定向 重定向分為重定向分為:輸出重定向、輸入重定向和錯(cuò)誤 重定向。 或或 實(shí)現(xiàn)輸出重定向,用戶可以使用輸出重定向把 一個(gè)命令的輸出重定向到一個(gè)文件 1)ls l /etcdir 將ls命令生成的/etc目錄下的一個(gè)清單存到當(dāng)前目錄 中的dir

2、文件,而不在屏幕輸出。 2)ls l /usrdir 將ls命令生成的/usr目錄的一個(gè)清單以追加的方式存 到當(dāng)前目錄中的dir文件中。5重定向重定向6重定向重定向連接兩個(gè)或多個(gè)文件 使用cat命令并重定向輸出到一個(gè)文件可以連接兩個(gè)或多個(gè)文件。7重定向重定向追加到一個(gè)文件 可以使用雙重定向輸出符號(hào)“”,保留文件以前的內(nèi)容。這種情況下,命令輸出追加到另一個(gè)文件中。8重定向重定向重定向標(biāo)準(zhǔn)輸出到一個(gè)設(shè)備 除了重定向一個(gè)命令的輸出到一個(gè)文件,也可以把它重定向到一個(gè)設(shè)備,因?yàn)閁NIX系統(tǒng)將設(shè)備當(dāng)做文件。 $echo “Hello! I am petter!” /dev/tty01重定向標(biāo)準(zhǔn)輸入 使用“

3、”重定向輸入。例如:用戶已經(jīng)創(chuàng)建好了一個(gè)文件letter。如果希望通過(guò)電子郵件發(fā)送給用戶petter??梢允褂孟旅娣绞剑?$mail petter letter $9重定向重定向標(biāo)準(zhǔn)錯(cuò)誤重定向 沒(méi)有專門的符號(hào)用于重定向stderr。我們可以同樣使用“”符號(hào),但需在它前面補(bǔ)一個(gè)數(shù)字2。10 管道及其使用管道及其使用11管道管道 管道即將一條命令執(zhí)行后產(chǎn)生的結(jié)果數(shù)據(jù)通過(guò)標(biāo)準(zhǔn)輸出送給后一條命令,作為該命令的輸入數(shù)據(jù)。 管道使用命令“|”將這些命令前后銜接在一起,形成一個(gè)管道線,格式為: 命令1|命令2|命令3 管道線中的每一條命令都作為一個(gè)單獨(dú)的進(jìn)程運(yùn)行,每一條命令的輸出作為下一條命令的輸入。命令執(zhí)

4、行的順序是從左至右。12管道管道13管道管道管道經(jīng)常用于過(guò)濾、修改或維護(hù)一個(gè)命令的輸出。1、用管道做過(guò)濾器 很多時(shí)候不需要一個(gè)命令產(chǎn)生的全部輸出。這種情況下,用戶可以從有命令產(chǎn)生的輸出中過(guò)濾想要的信息。2、用管道進(jìn)行數(shù)據(jù)處理 14管道管道T接頭 是一種特殊類型的管道,與現(xiàn)實(shí)生活中的T型管道接頭很相似。 用于重定向一個(gè)管道數(shù)據(jù)到多個(gè)地方。 tee命令用于首先一個(gè)T接頭功能。它從stdin得到輸入并把同樣的內(nèi)容寫入stdout和別的文件中。15管道管道 16 命令的間隔符命令的間隔符17命令間隔符命令間隔符 一個(gè)命令行中可以若干條命令,各個(gè)命令之間可以用下表的字符進(jìn)行間隔。;&| |前后命

5、令的執(zhí)行存在“邏輯或”關(guān)系,只有“| |”前面的命令執(zhí)行失敗,后面的命令才被執(zhí)行。前后命令的執(zhí)行存在“邏輯與”關(guān)系,只有&前面的命令執(zhí)行成功后,后面的命令才被執(zhí)行用“;”間隔的各命令按順序依次執(zhí)行18命令間隔符(續(xù)一)命令間隔符(續(xù)一) 當(dāng)幾個(gè)命令的間隔符同時(shí)出現(xiàn)在同一個(gè)命令行上時(shí),其優(yōu)先級(jí)為: 1) ;的優(yōu)先級(jí)最低 2) | |和&具有相同的優(yōu)先級(jí) 3) 相同優(yōu)先級(jí),按從左到右的結(jié)合原則執(zhí)行 命令行 4) 使用“( )”可以組合命令行中的命令,改變執(zhí) 行順序19 使用使用vi編輯器編輯器20編輯文件編輯文件You can change the content of text

6、files and create new files with a text editor.Text editors edit text. They do not try to format the text like word processors.PICOA novice friendly basic text editor used as standard on many systems. Start with the command pico filenameEMACSA powerful editing environment which can be programmed. It

7、has many modes for auto layout of program code. Start with the command emacs filenameVIA powerful editor which can be somewhat confusing for newcomers. It is designed for rapid editing of text files and programming. Start with the command vi filename21Vi 簡(jiǎn)介簡(jiǎn)介 Vi是Visual interface的簡(jiǎn)稱,它是一個(gè)功能強(qiáng)大的全屏幕文本編輯器

8、,是UNIX最重要的應(yīng)用程序之一,它的作用是建立、編輯、顯示ASCII碼的文本文件。 Vi沒(méi)有菜單,只有命令。注意注意:Vi命令并不鎖住所編輯的文件,因此多個(gè)用戶可能同時(shí)編輯一個(gè)文件,那么最后保存的文件版本將被保留。22Vi 簡(jiǎn)介簡(jiǎn)介鍵入:vi exampletext23Vi 的三種運(yùn)行模式的三種運(yùn)行模式 編輯模式編輯模式插入模式插入模式命令模式命令模式進(jìn)入進(jìn)入 vi filename退出退出鍵入鍵入ZZ輸入輸入 i,o,aESC鍵鍵:命令以回車命令以回車結(jié)束運(yùn)行結(jié)束運(yùn)行24移動(dòng)光標(biāo)移動(dòng)光標(biāo) 命令命令描述描述 j 或下箭頭或下箭頭向下移動(dòng)一行向下移動(dòng)一行 k 或上箭頭或上箭頭向上移動(dòng)一行向上移

9、動(dòng)一行 h 或左箭頭或左箭頭左移一個(gè)字符左移一個(gè)字符 l 或右箭頭或右箭頭右移一個(gè)字符右移一個(gè)字符 w右移一個(gè)詞右移一個(gè)詞 W右移一個(gè)以空格分隔的詞右移一個(gè)以空格分隔的詞 b左移一個(gè)詞左移一個(gè)詞 B左移一個(gè)以空格分隔的詞左移一個(gè)以空格分隔的詞 0移到行首移到行首25移動(dòng)光標(biāo)(續(xù)一)移動(dòng)光標(biāo)(續(xù)一) 命令命令描述描述$到行尾到行尾(到句子的開(kāi)頭到句子的開(kāi)頭)到句子的末尾到句子的末尾到段落的開(kāi)頭到段落的開(kāi)頭到段落的末尾到段落的末尾Ctrl-F向前翻頁(yè)向前翻頁(yè)Ctrl-B向后翻頁(yè)向后翻頁(yè)nG到第到第n n行行G到最后一行到最后一行26插入文本插入文本 命令命令描述描述 i在當(dāng)前字符前插入文本在當(dāng)前字

10、符前插入文本 I在行首插入文本在行首插入文本 a在當(dāng)前字符后添加文本在當(dāng)前字符后添加文本 A在行末添加文本在行末添加文本 o在當(dāng)前行后面插入一空行在當(dāng)前行后面插入一空行 O在當(dāng)前行前面插入一空行在當(dāng)前行前面插入一空行 R以改寫方式輸入文本以改寫方式輸入文本27刪除、拷貝文本刪除、拷貝文本 命令命令描述描述x刪除光標(biāo)處的字符刪除光標(biāo)處的字符X刪除光標(biāo)前面的字符刪除光標(biāo)前面的字符dd刪除光標(biāo)所在的整行刪除光標(biāo)所在的整行d$刪除從光標(biāo)所在處開(kāi)始到行尾的內(nèi)容刪除從光標(biāo)所在處開(kāi)始到行尾的內(nèi)容d0刪除從光標(biāo)前一個(gè)字符開(kāi)始到行首的內(nèi)容刪除從光標(biāo)前一個(gè)字符開(kāi)始到行首的內(nèi)容db刪除前一個(gè)詞刪除前一個(gè)詞dG刪除當(dāng)

11、前行一直到文件結(jié)尾刪除當(dāng)前行一直到文件結(jié)尾28文本替換命令文本替換命令 命令命令描述描述r仍保持在命令模式替換當(dāng)前字符仍保持在命令模式替換當(dāng)前字符s替換當(dāng)前字符并進(jìn)入插入模式替換當(dāng)前字符并進(jìn)入插入模式R直到按下直到按下Esc鍵才替換多個(gè)字符鍵才替換多個(gè)字符cw修改下一個(gè)詞的開(kāi)頭修改下一個(gè)詞的開(kāi)頭cc修改整個(gè)一行修改整個(gè)一行cG從文件的最后一行開(kāi)始修改從文件的最后一行開(kāi)始修改29查找和替換命令查找和替換命令 命令命令描述描述/text從當(dāng)前光標(biāo)位置開(kāi)始向前查找從當(dāng)前光標(biāo)位置開(kāi)始向前查找text?text從當(dāng)前光標(biāo)位置開(kāi)始向后查找從當(dāng)前光標(biāo)位置開(kāi)始向后查找text/向前重復(fù)前一次的查找向前重復(fù)前一

12、次的查找?向后重復(fù)前一次的查找向后重復(fù)前一次的查找n在同一個(gè)方向重復(fù)查找在同一個(gè)方向重復(fù)查找N在反方向重復(fù)查找在反方向重復(fù)查找30文本查找和替換命令文本查找和替換命令 命令命令描述描述:s/oldtext /newtext向前查找向前查找oldtext并替換成并替換成newtextm,ns/oldtext /newtext從從m行到行到n行向前查找行向前查找oldtext并替換成并替換成newtext:s/oldtext /newtext/g在這個(gè)文件中查找在這個(gè)文件中查找oldtext并替換成并替換成newtext/text如果在如果在/和和text之間輸入多個(gè)空格,只查找整個(gè)詞之間輸入多個(gè)

13、空格,只查找整個(gè)詞/text只在一行的開(kāi)始查找只在一行的開(kāi)始查找/text$只在一行的結(jié)尾查找只在一行的結(jié)尾查找/(多于一個(gè)單詞)(多于一個(gè)單詞)用括弧查找多個(gè)單詞用括弧查找多個(gè)單詞31剪切、拷貝和粘貼命令剪切、拷貝和粘貼命令 命令命令描述描述yy拷貝當(dāng)前行拷貝當(dāng)前行nyy從當(dāng)前行位置開(kāi)始拷貝從當(dāng)前行位置開(kāi)始拷貝n行行p在當(dāng)前光標(biāo)位置后粘貼拷貝的文本在當(dāng)前光標(biāo)位置后粘貼拷貝的文本P在當(dāng)前光標(biāo)位置前粘貼拷貝的文本在當(dāng)前光標(biāo)位置前粘貼拷貝的文本: m a移動(dòng)當(dāng)前行并剪貼在第移動(dòng)當(dāng)前行并剪貼在第a行后面行后面:a, bmc移動(dòng)第移動(dòng)第a至至b行并剪貼在第行并剪貼在第c行后面行后面:a, btc拷貝第

14、拷貝第a至至b行并剪貼在第行并剪貼在第c行后面行后面32對(duì)對(duì)vi選項(xiàng)的設(shè)置選項(xiàng)的設(shè)置 命令命令描述描述:set number在在vi中為每一行設(shè)行號(hào)中為每一行設(shè)行號(hào):set all列出所有有效的選項(xiàng)列出所有有效的選項(xiàng):set autoindent約束下一行使之與當(dāng)前行有同樣的字符數(shù)約束下一行使之與當(dāng)前行有同樣的字符數(shù):set readonly設(shè)置當(dāng)前文件為只讀。不保存修改設(shè)置當(dāng)前文件為只讀。不保存修改:set wrapmargin=n設(shè)置右側(cè)裝訂線等于設(shè)置右側(cè)裝訂線等于n.:set showmode顯示用戶所在的顯示用戶所在的“插入插入”、“替換一個(gè)字替換一個(gè)字符符”或或“替換替換”模式模式33撤消和重做命令撤消和重做命令如果用戶對(duì)文件的修改有誤,可以撤消所做的修改。使用命令“u”命令可以撤消剛才的修改。也可以使用命令“U”重做對(duì)當(dāng)前行的修改。為了重做被撤消的內(nèi)容,可以使用命令“.”。34導(dǎo)入和導(dǎo)出文本導(dǎo)入和導(dǎo)出文本導(dǎo)入:在特定的位置上將一個(gè)磁盤文件插入編輯器。導(dǎo)出:打開(kāi)多個(gè)文件,從一個(gè)打開(kāi)的文件中拷貝文本并把它保存為磁盤上的另一個(gè)文件。導(dǎo)入一個(gè)磁盤文件到編輯器:為了插入一個(gè)磁盤文件到已打開(kāi)文件的位置上,使用命令“r filename”。其中,filename是一個(gè)用完全路徑命名的文件名。從當(dāng)前文件導(dǎo)出文本:可以導(dǎo)入

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論