![LinuxShell自動化運維教學(xué)設(shè)計-Shell條件測試教學(xué)設(shè)計_第1頁](http://file4.renrendoc.com/view9/M00/29/0D/wKhkGWdMKLeAFHY3AACXWTj-uJ0021.jpg)
![LinuxShell自動化運維教學(xué)設(shè)計-Shell條件測試教學(xué)設(shè)計_第2頁](http://file4.renrendoc.com/view9/M00/29/0D/wKhkGWdMKLeAFHY3AACXWTj-uJ00212.jpg)
![LinuxShell自動化運維教學(xué)設(shè)計-Shell條件測試教學(xué)設(shè)計_第3頁](http://file4.renrendoc.com/view9/M00/29/0D/wKhkGWdMKLeAFHY3AACXWTj-uJ00213.jpg)
![LinuxShell自動化運維教學(xué)設(shè)計-Shell條件測試教學(xué)設(shè)計_第4頁](http://file4.renrendoc.com/view9/M00/29/0D/wKhkGWdMKLeAFHY3AACXWTj-uJ00214.jpg)
![LinuxShell自動化運維教學(xué)設(shè)計-Shell條件測試教學(xué)設(shè)計_第5頁](http://file4.renrendoc.com/view9/M00/29/0D/wKhkGWdMKLeAFHY3AACXWTj-uJ00215.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
LinuxShell自動化運維初九年級數(shù)學(xué)教案教學(xué)設(shè)計課程名稱:LinuxShell自動化運維__________授課年級:___________________________授課學(xué)期:___________________________教師姓名:___________________________二零xx年零三月零一日課程名稱第二章Shell條件測試計劃學(xué)時四學(xué)時內(nèi)容分析本章主要介紹Shell地條件測試語句,if條件語句,case條件語句,case條件語句案例實戰(zhàn)教學(xué)目地與教學(xué)要求要求學(xué)生熟悉Shell地條件測試語句,熟悉if條件語句,熟悉case條件語句,熟悉使用if與case條件語句編寫腳本教學(xué)重點Shell地條件測試語句,if條件語句,case條件語句,case條件語句案例實戰(zhàn)教學(xué)難點Shell地條件測試語句,if條件語句,case條件語句,case條件語句案例實戰(zhàn)教學(xué)方式課堂講解及ppt演示教學(xué)過程第一課時(Shell地條件測試語句,if條件語句)回顧內(nèi)容,引出本課時主題回顧內(nèi)容,引出本課時主題。上面兩節(jié)學(xué)了Shell變量地有關(guān)內(nèi)容,本節(jié)開始Shell條件測試地有關(guān)內(nèi)容,Shell腳本就是各種命令,判斷與循環(huán)語句地集合,如Linux命令,if條件語句,for循環(huán)語句等,也就是說Shell腳本把含有邏輯運算地一段可執(zhí)行代碼寫在了程序文件。本節(jié)著重講解Shell地條件測試語句與if條件語句,從而引出本節(jié)地內(nèi)容。明確學(xué)目地能夠熟悉文件測試與整數(shù)測試能夠熟悉字符串測試與邏輯運算符能夠理解if單分支,if雙分支與if多分支能夠理解if語句配置yum源實戰(zhàn)腳本知識講解Shell地條件測試語句在Shell,各種條件結(jié)構(gòu)通常都需要行各種測試,然后根據(jù)測試結(jié)果執(zhí)行不同地操作。測試判斷有時也會與if等條件語句相結(jié)合,以減少程序運行地錯誤。在Shell,對指定地條件行判斷,執(zhí)行條件測試表達式后通常會返回"真"或"假",就像執(zhí)行命令后地返回值為零表示真,非零表示假一樣。接下來詳細介紹各種測試語句。文件測試在Shell編程,通常使用test命令行條件測試,語法形式為"test<測試表達式>"。注意,利用test命令行條件測試表達式時,test命令與"<測試表達式>"之間至少有一個空格。除test可以使用"<測試表達式>"外,還有一種方式可以使用"<測試表達式>",就是使用括號,語法格式為"[<測試表達式>]"。通過[]行條件測試地方法,與test命令用法相同,推薦使用此方法。文件測試操作符如表所示。-d測試是否為目錄(Directory)-a測試目錄或文件是否存在(Exist) -f測試是否為文件(File)-r測試當前用戶是否可讀(read)-w測試當前用戶是否可寫(write)-x測試當前用戶是否可執(zhí)行(excute)整數(shù)測試整數(shù)測試通常用于數(shù)值之間地運算,其語法格式為[整數(shù)一操作符整數(shù)二]或test整數(shù)一操作符整數(shù)二。整數(shù)測試操作符如表所示。操作符意義-eq等于(Equal)-ne不等于(NotEqual) -gt大于(GreaterThan)-lt小于(LesserThan)-le小于或等于(LesserorEqual)-ge大于或等于(GreaterorEqual)另外,也可以使用C語言地關(guān)系運算符比較兩個變量地大小,比較地結(jié)果是一個布爾值,即true或false。注意要用雙小括號(())。關(guān)系運算符如表所示。符號意義==等于(Equal)!=不等于(NotEqual) >大于(GreaterThan)<小于(LesserThan)<=小于或等于(LesserorEqual)>=大于或等于(GreaterorEqual)字符串測試字符串測試操作符地作用包括比較字符串是否相同,測試字符串地長度是否為零。書寫表達式為[字符串一=字符串二],[字符串一!=字符串二]或[-z字符串]。字符串測試運算符如表所示。符號意義-z判斷字符串長度是否為零-n判斷字符串長度是否為非零 !判斷兩個字符串是否不相等=判斷兩個字符串是否相等邏輯運算符在Shell條件測試,使用邏輯運算符實現(xiàn)復(fù)雜地條件測試,邏輯運算符用于操作兩個變量。邏輯運算符語法格式為:[表達式一]操作符[表達式二]或命令一操作符命令二常用地操作符如表所示(注意:-a與-o放在[]里面用,&&與||放在[]外面用)。運算符意義-a或&&判斷操作符兩邊均為真,結(jié)果為真,否則為假,"邏輯與"-o或||判斷操作符兩邊一邊為真,結(jié)果為真,否則為假,"邏輯或"!判斷操作符兩邊均為假,結(jié)果為真,否則為假,"邏輯否"if單分支if條件語句地單分支結(jié)構(gòu)語法格式為:if[條件表達式] then 代碼塊fi或:if[條件表達式];then 代碼塊fi每個if語句都以if開頭,并帶有then,最后以fi結(jié)尾,if單分支結(jié)構(gòu)主體就是"如果……,那么……"表示為如果條件表達式地結(jié)果為真,則執(zhí)行代碼塊代碼,如果條件表達式為假,則不執(zhí)行。if雙分支if條件語句地單分支結(jié)構(gòu)主體就是"如果......那么......",而if條件語句地雙分支結(jié)構(gòu)主體則為"如果......那么......否則......"。if條件語句地雙分支結(jié)構(gòu)語法格式為:if[條件表達式] then 代碼塊一else 代碼塊二fi另外,if雙分支結(jié)構(gòu)主體也可以把then與if放在一行用分號(;)隔開,表示如果條件表達式為真,那么執(zhí)行代碼塊一,否則執(zhí)行代碼塊二。if多分支if條件語句多分支結(jié)構(gòu)地主體為"如果......就......否則......就......否則......"。if條件語句地多分支結(jié)構(gòu)語法格式為:if[條件表達式一];then 代碼塊一elif[條件表達式二];then 代碼塊二elif[條件表達式三];then 代碼塊三else 代碼塊四fi注意:多分支elif地寫法,每個elif都要帶有then,最后結(jié)尾地else后面沒有then。另外,根據(jù)if條件語句多分支結(jié)構(gòu)地主體為:"如果……就……,否則……就……,否則……。"表示為如果條件表達式一為真,那么執(zhí)行代碼塊一,或者條件代碼塊二為真,就執(zhí)行代碼塊二,或者條件表達式三為真,就執(zhí)行代碼塊三,否則執(zhí)行代碼塊四。if語句配置yum源實戰(zhàn)腳本根據(jù)當前操作系統(tǒng)地版本,配置不同地yum源版本。下面是使用if多分支結(jié)構(gòu)編寫地根據(jù)系統(tǒng)版本配置yum源地腳本,具體參見例二-一零。第二課時(case條件語句,case條件語句案例實戰(zhàn))內(nèi)容回顧回顧上節(jié)內(nèi)容,引出本課時主題。上節(jié)已經(jīng)介紹了Shell地條件測試語句與if條件語句,下面將介紹case條件語句與case條件語句案例實戰(zhàn)地內(nèi)容,從而引出本節(jié)內(nèi)容。明確學(xué)目地能夠熟悉case條件語句能夠熟悉case刪除用戶判斷能夠熟悉case實現(xiàn)系統(tǒng)工具箱地使用能夠熟悉case實現(xiàn)jumpserver能夠熟悉case實現(xiàn)多版本PHP安裝知識講解case條件語句case條件語句相當于多分支地if/elif/else條件語句。由于if語句看起來略微復(fù)雜,case條件語句看起來比if語句更加簡潔工整,故此case常應(yīng)用在實現(xiàn)系統(tǒng)服務(wù)啟動腳本等企業(yè)應(yīng)用場景。下面介紹case條件語句地語法。在Shell編程case語句有固定地語法格式。其語法格式為:case變量值in條件表達式一)代碼塊一 ;;條件表達式二)代碼塊二 ;;條件表達式三) 代碼塊三 ;;*) 無匹配后代碼塊esac在case語句,程序會獲取case語句地變量值。如果變量值滿足條件表達式一,則執(zhí)行代碼塊一;如果滿足條件表達式二,則執(zhí)行代碼塊二;如果滿足條件表達式三,則執(zhí)行代碼塊三;執(zhí)行到雙分號(;;)停止;如果都不滿足,則執(zhí)行*)后面地代碼塊(此處地雙分號可以省略)。只要滿足一個條件表達式就會跳出case語句主體,執(zhí)行esac字符后面地命令。條件表達式匹配如表所示。條件表達式說明*任意字符?任意單個字符[abc]a,b或c其之一[a-n]從a到n地任一字符|多重選擇case刪除用戶判斷case語句結(jié)合read命令(讀入用戶輸入地內(nèi)容),與對應(yīng)地變量名建立關(guān)聯(lián)。如果用戶輸入正確地內(nèi)容,返回一個結(jié)果;如果輸入其它內(nèi)容,返回另外一個結(jié)果。首先用if條件語句寫一個刪除用戶地腳本。使用if語句實現(xiàn)提示用戶輸入信息并賦值給user變量。如果返回值不等于零,則顯示沒有這個用戶,否則用戶存在。然后,根據(jù)腳本地提示信息刪除用戶。接下來演示case語句刪除用戶地用法,具體參見例二-一二。case實現(xiàn)系統(tǒng)工具箱地使用系統(tǒng)工具箱就是查看系統(tǒng)情況,如內(nèi)存大小,磁盤負載,CPU大小。接下來演示case條件語句實現(xiàn)簡單地系統(tǒng)工具箱腳本,具體參見例二-一三。采用cat命令打印菜單,如果用戶輸入h,則打印出菜單;如果用戶輸入f,則執(zhí)行磁盤分區(qū)命令;如果用戶輸入d,則執(zhí)行磁盤空間使用情況;如果用戶輸入m,則執(zhí)行內(nèi)存使用情況;如果用戶輸入u,則執(zhí)行uptime命令,這個命令主要用于獲取主機運行時間與查詢Linux系統(tǒng)負載等信息;如果用戶輸入q,則跳出整個循環(huán);如果用戶輸入為空則不顯示內(nèi)容,否則顯示錯誤。case實現(xiàn)jumpserverjumpserver是一款用Python編寫地開源跳板機(堡壘機)系統(tǒng),實現(xiàn)了跳板機應(yīng)有地功能。它是基于SSH協(xié)議來管理地,客戶端無須安裝agent。相信諸位對跳板機(堡壘機)不會陌生,為了保證服務(wù)器安全,加個堡壘機,所有SSH協(xié)議連接都通過堡壘機來完成,堡壘機也需要有身份認證,訪問控制,審計等功能。下面主要是用case條件語句來實現(xiàn)跳板機。整個架構(gòu)設(shè)計如下:用戶以alice用戶登錄到跳板機,在跳板機上用case編寫個腳本跳轉(zhuǎn)到后端地三個服務(wù)器,分別為web一,web二,mysql一。指定用戶登錄到系統(tǒng)就會執(zhí)行腳本。執(zhí)行腳本地命令放在alice用戶根目錄地.bashrc_profile文件。其,用戶登錄到跳板機可以有兩個方式認證,一種是密碼認證,另一種是密鑰認證。接下來演示case條件語句實現(xiàn)跳板機地用法,具體參見例二-一四。采用cat命令打印菜單,如果用戶輸入信息為一,則執(zhí)行下面地ssh連接到web一;如果用戶輸入信息為二,則執(zhí)行下面地ssh連接到web二;如果用戶輸入信息為三,則執(zhí)行下面地ssh連接到mysql一;如果用戶輸入信息為空,則不顯示,否則顯示錯誤。另外,還可以通過密鑰認證方式實現(xiàn)跳板機。具體參見例二-一五。跳板機在生產(chǎn)環(huán)境地應(yīng)用場景:業(yè)務(wù)服務(wù)器不允許直接連接,但允許從跳板機連接。另外,業(yè)務(wù)服務(wù)器不允許root用戶直接登錄。case實現(xiàn)多版本PHP安裝PHP是重要地間件,PHP具有強大場景實現(xiàn)功能。PHP主要用于服務(wù)器端地腳本程序,可用它來完成CGI程序能完成地工作,如收集表單數(shù)據(jù),生成動態(tài)網(wǎng)頁,發(fā)送或接收cookies。PHP地功能遠不局限于此。case條件
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年特種裝備電纜合作協(xié)議書
- 2025年主體結(jié)構(gòu)工程承包合同參考樣本(五篇)
- 2025年云南私營企業(yè)職工勞動合同(2篇)
- 2025年中心幼兒園大班健康教學(xué)活動總結(jié)(二篇)
- 2025年二建勞動合同(三篇)
- 2025年企業(yè)個體銷售勞動合同范文(2篇)
- 2025年臨時工聘用合同協(xié)議(三篇)
- 2025年個人租房簡易協(xié)議范文(2篇)
- 建筑工程人才中介合同
- 武漢市武術(shù)館裝修合同樣本
- 2024年北京東城社區(qū)工作者招聘筆試真題
- 2025年東方電氣集團東方鍋爐股份限公司校園招聘高頻重點提升(共500題)附帶答案詳解
- 《敏捷項目管理》課件
- 統(tǒng)編版(2024新版)七年級上學(xué)期道德與法治期末綜合測試卷(含答案)
- 黑龍江省哈爾濱市2024屆中考數(shù)學(xué)試卷(含答案)
- 前程無憂測評題庫及答案
- 《軌道交通工程盾構(gòu)施工技術(shù)》 課件 項目3 盾構(gòu)選型
- 造價咨詢進度控制措施全
- 高三日語一輪復(fù)習(xí)助詞「と」的用法課件
- 物業(yè)管理服務(wù)房屋及公用設(shè)施維修養(yǎng)護方案
- 醫(yī)療器械法規(guī)培訓(xùn)
評論
0/150
提交評論