国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
shell:命令解釋器和編程語(yǔ)言
shell:命令解釋器和編程語(yǔ)言

 

  在文本環(huán)境下,shell作為命令解釋器,建立了用戶和操作系統(tǒng)之間的接口。當(dāng)用戶鍵入一個(gè)命令后,shell將對(duì)該命令進(jìn)行解釋,并調(diào)用相應(yīng)的程序。Linux中有許多shell,其中最常用的為如下3個(gè)。

  bash(Bourne Again Shell)--Bourne Shell(最初UNIX shell之一)的增強(qiáng)版本。

  tcsh(TC Shell)--作為BSD UNIX系統(tǒng)一部分開(kāi)發(fā)的C Shell的增強(qiáng)版本。

  zsh(Z Shell)--該shell結(jié)合了來(lái)自許多shell(包括Korn Shell)的特性。

  由于用戶常常喜歡選用各種不同的shell,因此多用戶操作系統(tǒng)在任何時(shí)候都有多個(gè)不同的shell在使用。多種shell充分體現(xiàn)了Linux操作系統(tǒng)的一項(xiàng)重要功能--為每個(gè)用戶提供一個(gè)定制界面。

  shell腳本shell除了具有解釋鍵盤(pán)命令并將其發(fā)送到操作系統(tǒng)的功能外,它還是一種高級(jí)編程語(yǔ)言。shell命令可安排在一個(gè)文件中供以后執(zhí)行,這些文件在Linux系統(tǒng)中稱為shell腳本,在DOS和Windows稱為批處理文件。這種靈活性使用戶利用相對(duì)短而簡(jiǎn)單的命令就可進(jìn)行復(fù)雜操作,并且使用戶輕而易舉就可創(chuàng)建執(zhí)行復(fù)雜操作的精巧程序。

  1. 文件名的生成

  通配符和模糊文件引用在鍵入讓shell處理的命令時(shí),可使用對(duì)shell具有特殊意義的字符來(lái)構(gòu)造模式。這些特殊意義的字符稱為通配符(wildcard)。模式為用戶提供了一種簡(jiǎn)便方式,使得用戶不必鍵入完整的文件名,而只鍵入模式,然后由shell將模式展開(kāi)為匹配的文件名。這些模式稱為模糊文件引用(ambiguousfilereference),該引用可節(jié)省因輸入長(zhǎng)文件名或者一長(zhǎng)串相近的文件名而花費(fèi)的精力。比如,shell可以將模式mak*展開(kāi)為make-3.80.tar.gz。對(duì)于只知道文件名字的一部分或不記得文件名精確拼寫(xiě)的情況,模式便非常有用。

  2. 設(shè)備無(wú)關(guān)的輸入/輸出

  重定向設(shè)備(如打印機(jī)、終端)和磁盤(pán)文件在Linux程序中都以文件的形式呈現(xiàn)。當(dāng)向Linux操作系統(tǒng)發(fā)出命令時(shí),可指示操作系統(tǒng)將輸出送到任何一個(gè)設(shè)備或文件,這稱為輸出重定向(redirection)。

  設(shè)備無(wú)關(guān)性類似地,通常來(lái)自鍵盤(pán)的程序輸入可重定向?yàn)閬?lái)自某個(gè)磁盤(pán)文件。輸入和輸出都是與設(shè)備無(wú)關(guān)的,輸出可被重定向到任何合適的設(shè)備,來(lái)自任何設(shè)備的輸入也可被重定向。

  例如,cat實(shí)用工具通常在屏幕上顯示文件內(nèi)容。在運(yùn)行cat命令的時(shí)候,可以很容易地將其輸出重定向到某個(gè)磁盤(pán)文件而不是屏幕上。

  3. shell函數(shù)

  shell一個(gè)非常重要的特性是它可作為一種編程語(yǔ)言來(lái)使用。因?yàn)閟hell是一個(gè)解釋器,所以它不能對(duì)為它編寫(xiě)的程序進(jìn)行編譯,而是在每次從磁盤(pán)加載這些程序時(shí)對(duì)它們進(jìn)行解釋。而程序的加載和解釋都是非常耗時(shí)的。

  針對(duì)此問(wèn)題,許多shell(如BourneAgainShell)都包含shell函數(shù),shell把這些函數(shù)放在內(nèi)存中,這樣每次需要執(zhí)行它們時(shí)就不必再?gòu)拇疟P(pán)讀入。shell還以一種內(nèi)部格式來(lái)存放這些函數(shù),這樣就不必耗費(fèi)大量的時(shí)間來(lái)解釋它們。

  4. 作業(yè)控制

  作業(yè)控制(jobcontrol)是shell的另一個(gè)特性,它允許用戶同時(shí)運(yùn)行多個(gè)作業(yè),并且根據(jù)需求可將前后臺(tái)的作業(yè)進(jìn)行切換。當(dāng)啟動(dòng)某個(gè)作業(yè)時(shí),它通常是運(yùn)行在前臺(tái),因此該作業(yè)是與終端相連接的。利用作業(yè)控制這一功能,可將正處于前臺(tái)工作的作業(yè)切換到后臺(tái)去,在后臺(tái)該作業(yè)可繼續(xù)運(yùn)行,并且在前臺(tái)可以監(jiān)視另一個(gè)作業(yè)。如果想關(guān)注一下某個(gè)正在后臺(tái)運(yùn)行的作業(yè),那么可將其切換到前臺(tái)工作,以使其又一次與終端相連接。作業(yè)控制的這一概念起源于BSDUNIX,后來(lái)又出現(xiàn)在CShell中。

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
shell命令解釋器源代碼
UNIX考古記:一個(gè)“遺失”的SHELL
linux下shell的工作原理
第三章 Linux基本命令
《shell編程指南》讀書(shū)筆記(二)——通配符,標(biāo)準(zhǔn)輸入,輸出及重定向
shell中的特殊字符
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服