




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
shell編程-分支語句主講:小美老師課程目錄條件語句多路分支語句4結構性語句結構性語句主要根據程序的運行狀態(tài)、輸入數據、變量的取值、控制信號以及運行時間等因素來控制程序的運行流程。主要包括:條件測試語句(兩路分支)、多路分支語句、循環(huán)語句、循環(huán)控制語句和后臺執(zhí)行語句等。5條件語句if…then…fi語法結構:if表達式 then命令表fi
如果表達式為真,則執(zhí)行命令表中的命令;否則退出if語句,即執(zhí)行fi后面的語句。if和fi是條件語句的語句括號,必須成對使用;命令表中的命令可以是一條,也可以是若干條。6復習-文件測試-dname
測試name是否為一個目錄-ename
測試一個文件是否存在-fname
測試name是否為普通文件-Lname測試name是否為符號鏈接-rname
測試name文件是否存在且為可讀-wname
測試name文件是否存在且為可寫-xname
測試name文件是否存在且為可執(zhí)行-sname
測試name文件是否存在且其長度不為0f1-ntf2
測試文件f1是否比文件f2更新f1-otf2
測試文件f1是否比文件f2更舊7實例shell程序prog2.sh(測試命令行參數是否為已存在的文件或目錄)。用法為:./prog2.shfile代碼如下:#Thestatementofif…then…fi(注釋語句)if[-f$1](測試參數是否為文件)then echo"File$1exists"(引用變量值)fiif[-d$HOME/$1](測試參數是否為目錄)then echo"File$1isadirectory"(引用變量值)fi8實例執(zhí)行prog2程序:$./prog2.shprog1.shFileprog1.shexists
$0為prog2.sh;$1為prog1.sh,是一個已存在的文件.$./prog2.shbackupFilebackupisadirectory
$0為prog2.sh;$1為backup,是一個已存在的目錄.如果不帶參數,或大于一個參數運行prog2,例如:$./prog2.sh(或$./prog2.shfile1file2)會出現什么結果?9條件語句
if…then…else…fi語法結構為:if表達式then命令表1else命令表2fi如果表達式為真,則執(zhí)行命令表1中的命令,再退出if語句;否則執(zhí)行命令表2中的語句,再退出if語句.注意:無論表達式是否為真,都有語句要執(zhí)行.10test命令的使用test命令測試的條件成立時,命令返回值為真(0),否則返回值為假(非0).test$name-eq$1echo$?方式1iftest-f$filenamethen……fi方式2if[-f$filename]then……fi方式3用方括號替代test語句至少一個空格至少一個空格11實例例子:shell程序prog3.sh,用法為:./prog3.shfile內容如下:#Thestatementofif…then…else…fiif[-d$1]then echo"$1isadirectory" exit(退出當前的shell程序)else if[-f$1] then echo"$1isacommonfile" else echo"unknown" fifi12實例運行prog3.sh程序:$./prog3.shbackupbackupisadirectory$./prog3.shprog1prog1isacommonfile$./prog3.shabcunknownprog3.sh是對prog2.sh的優(yōu)化,邏輯結構更加清晰合理!13多路分支語句case…esac
多路分支語句case用于多重條件測試,語法結構清晰自然.其語法為:
case字符串變量in模式1)命令表1;;模式2|模式3)命令表2;;……模式n)命令表n;;esaccase語句只能檢測字符串變量各模式中可用文件名元字符,以右括號結束命令表以單獨的雙分號行結束,退出case語句模式n常寫為字符*表示所有其它模式最后一個雙分號行可以省略一次可以匹配多個模式用“|”分開14實例實例.程序prog4.sh檢查用戶輸入的文件名,用法為:./prog4.shstring_name#Thestatementofcase…esacif[$#-eq0]then echo"Noargumentisdeclared" exitficase$1in file1)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年鄆城幼兒面試試題及答案
- 6-甲酰基-5-(三氟甲基)煙酸乙酯hplc
- 5年級下冊英語第4單元單詞跟讀
- 5年級上冊簡易方程
- 4年級下冊日積月累1~8單元
- 地下建筑火災案例
- 2025年云南旅游職業(yè)學院單招職業(yè)傾向性測試題庫帶答案
- 2025年天津濱海職業(yè)學院單招職業(yè)傾向性測試題庫完美版
- 2025年南充文化旅游職業(yè)學院單招職業(yè)技能測試題庫及答案1套
- 2025年重慶資源與環(huán)境保護職業(yè)學院單招職業(yè)技能測試題庫1套
- 自然環(huán)境及特征(考向3:自然環(huán)境的地域差異(雪線、林線)) 【知識精講精研】 高考地理二輪核心考點突破課堂
- GB/T 43200-2023機器人一體化關節(jié)性能及試驗方法
- 園林噴灌工程施工方案
- 紅樓夢第二回極好課件
- 混凝土回彈數據自動計算表格
- 家庭節(jié)約用水
- 《材料性能學》教案
- 道路交通事故現場勘查與處置
- 電噴系統(tǒng)原理及故障維修手冊
- 環(huán)境影響評價報告公示-全椒縣水務全椒縣第二自來水廠擴建工程環(huán)境影響報告書公示全環(huán)評報告
- 名班主任工作室成員成長檔案
評論
0/150
提交評論