第5章Shell基礎(chǔ)說課講解_第1頁
第5章Shell基礎(chǔ)說課講解_第2頁
第5章Shell基礎(chǔ)說課講解_第3頁
第5章Shell基礎(chǔ)說課講解_第4頁
第5章Shell基礎(chǔ)說課講解_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第5章Shell基礎(chǔ)內(nèi)容概要使用通配符

編譯相似名稱的文件使用重定向符和管道符控制進(jìn)程的輸入輸出使用行繼續(xù)符使命令生效看到命令行使用組命令控制其執(zhí)行關(guān)于ShellKorn(ksh)或Bourne(bsh)或C(csh)用戶與AIX的交互頁面翻譯命令可以多線任務(wù)全面的編程語言特殊符號(hào)和通配符特殊符號(hào)是那些在shell編譯中有著特殊含義的符號(hào)例:<>|;!*?[]$\"''通配符是一組用來搜索和匹配文件類型的特殊符號(hào)例:*?![][-]文件名替換內(nèi)含的替換:[]![-]$lsne[stw]netnew$rm[fghjdn]e[tw]fewnetnew$ls*[1-5]test1test1.2test1.3$qprt[!tn]*myfilefew$cat?[!y]*[2-5]test1.2test1.3標(biāo)準(zhǔn)文件 標(biāo)準(zhǔn)輸入(0) 標(biāo)準(zhǔn)輸出(1) 錯(cuò)誤輸出(2)cmd文件描述符當(dāng)開始運(yùn)行共有三種文件描述符標(biāo)準(zhǔn)輸入: < 0標(biāo)準(zhǔn)輸出: > 1標(biāo)準(zhǔn)錯(cuò)誤: 2> 2輸入重定向默認(rèn)標(biāo)準(zhǔn)輸入$mailteam01Subject:LetterThisisaletter.<ctrl-d>Cc:$從一個(gè)文件重定向輸入:<$mailteam01<letter$輸出重定向默認(rèn)標(biāo)準(zhǔn)輸出:$

lsfile1 file2file3從一個(gè)文件重定向輸出:>$ls> ls.out$向一個(gè)文件增添更改重定向輸出:>>$ who >> whos.there$

使用cat創(chuàng)建文件普通方式使用cat來列出文件目錄,配合重定向符可以創(chuàng)建文件:使用重定向符

$cat>newfile Thisisline1ofthefile. Thisisthe2ndline. Andthelast. <ctrl-d> $ls letteracctfilefile1newfile$lsletteracctfilefile1$catfile1Thisisatestfile.Thefilehas2lines$小測(cè)試下列命令執(zhí)行后,將列出哪些文件?$ls/home/team01/*.?$ls/tmp/[a-zA-Z]*.[0-9]T或F:命令“l(fā)s*”列出當(dāng)前目錄中所有文件寫出下列命令的文件描述符$wc-l<file1>/tmp/lines標(biāo)準(zhǔn)輸入:標(biāo)準(zhǔn)輸出:標(biāo)準(zhǔn)錯(cuò)誤:想要把添加

testfile1

到report99后面.哪條命令是正確的?catreport99<testfile1cattestfile1>report99cattestfile1report99cattestfile1>>report99錯(cuò)誤重定向默認(rèn)標(biāo)準(zhǔn)錯(cuò)誤:

$

catfileafileb Thisisoutputfromfilea.

cat:cannotopenfileb重定向錯(cuò)誤輸出到一個(gè)文件:2>(若要追加:2>>) $catfileafileb2>errfile Thisisoutputfromfilea

$caterrfile cat:cannotopenfileb $catfileafileb2>/dev/null Thisisoutputfromfilea組合重定向組合重定向:

$command>outfile2>errfile<infile$command>>appendfile2>>errfile<infile綜合示例:

將標(biāo)準(zhǔn)錯(cuò)誤重定向到標(biāo)準(zhǔn)輸出:

$command>outfile2>&1

注意:下例與上面不同

$command2>&1>outfile管道使用“|”將一組命令順序分割,”|”

叫做管道符.前一條命令的標(biāo)準(zhǔn)輸出變成了下一條命令的標(biāo)準(zhǔn)輸入:

$

who|wc-l4下面的例子也是這樣:

$who>tempfile$

wc-ltempfile4 tempfile$

rmtempfile過濾器過濾器是讀取標(biāo)準(zhǔn)輸入,用某種方式將輸入轉(zhuǎn)化然后進(jìn)行輸出的命令例:ls-l|grep"^d"|wc–lLonglistingofallfiles:-rwxr-xr-x...file1drwxr-xr--...dir1-rwxr--r--...file2Findalllinesthatbeginwitha"d":drwxr-xr--...dir1Countalllines(directories)“T”型輸出tee

命令讀取標(biāo)準(zhǔn)輸入并將數(shù)據(jù)同時(shí)發(fā)送到標(biāo)準(zhǔn)輸出和文件中

ls|tee/tmp/ls.save|wc-lcowfoxox/tmp/ls.save3cowfoxoxteelswc -l命令分組多個(gè)命令可以在同一行運(yùn)行,使用“;“:$ls-R>outfile;exit等同于換行輸入:

$ls-R>outfile$exit續(xù)行符反斜線(\)后接一個(gè)新行字符可以用來在另一航繼續(xù)命令Shell將發(fā)出一個(gè)次級(jí)提示符“>”來聲明行的延續(xù)$cat/home/mydir/mysubdir/mydata\>/home/yourdir/yoursubdir/yourdata課堂練習(xí)下列命令將會(huì)匹配什么?

$ls???[!a-z]*[0-9]t

對(duì)于問題2-4,分別聲明標(biāo)準(zhǔn)輸入,標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤將發(fā)送到哪里.$catfile1

標(biāo)準(zhǔn)輸入(0):

標(biāo)準(zhǔn)輸出(1): 標(biāo)準(zhǔn)錯(cuò)誤(2):

$mailtim<letter

標(biāo)準(zhǔn)輸入(0):

標(biāo)準(zhǔn)輸出(1):

標(biāo)準(zhǔn)錯(cuò)誤(2):$cat.profile>newprofile2>1 standardinput(0): standardoutput(1): standarderror(2): 對(duì)于問題567,創(chuàng)建命令行cat來顯示filea的概括然后執(zhí)行下列操作:把命令的標(biāo)準(zhǔn)輸出放到fileb

把錯(cuò)誤放到filec.把命令的標(biāo)準(zhǔn)輸出放到fileband若存在錯(cuò)誤則一同放到fileb.

把標(biāo)準(zhǔn)輸出放到fileb并拋棄錯(cuò)誤.(不顯示或保存錯(cuò)誤信息。)課堂練習(xí)課堂練習(xí)答案下列命令將會(huì)匹配什么?

$ls???[!a-z]*[0-9]t

Thiswilllistallthefilesthatmatchthefollowingcriteria:thefirstthreecharacterscanbeanythingthefourthcharactermustnotbefromtherangeatozzeroormorecharacterscanfollowthesecond-lastcharactermustbefromtherange0to9thelastcharactermustbeat.對(duì)于問題2-4,分別聲明標(biāo)準(zhǔn)輸入,標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤將發(fā)送到哪里.$catfile1

標(biāo)準(zhǔn)輸入(0):keyboard 標(biāo)準(zhǔn)輸出(1):screen

標(biāo)準(zhǔn)錯(cuò)誤(2):screen

$mailtim<letter

標(biāo)準(zhǔn)輸入(0):letter

標(biāo)準(zhǔn)輸出(1):screen

標(biāo)準(zhǔn)錯(cuò)誤(2):screen$cat.profile>newprofile2>1 standardinput(0):keyboard standardoutput(1):newprofile standarderror(2):afilenamed1

對(duì)于問題567,創(chuàng)建命令行cat來顯示filea的概括然后執(zhí)行下列操作:把命令的標(biāo)準(zhǔn)輸出放到fileb

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論