- 相關推薦
2024年Linux認證考試要點:shell程序控制結構語句
在日常過程學習中,是不是經常追著老師要知識點?知識點也不一定都是文字,數學的知識點除了定義,同樣重要的公式也可以理解為知識點。為了幫助大家更高效的學習,下面是小編幫大家整理的2024年Linux認證考試要點:shell程序控制結構語句,僅供參考,希望能夠幫助到大家。
shell程序控制結構語句
腳本的控制結構語句有三種基本的類型:兩路分支、多路分支以及一個或多個命令的循環執行。Linux的bash中的兩路分支語句是if語句,多路分支語句是if-elif和case語句;代碼的循環執行語句是for、while和until語句。
if語句
兩路分支的if語句 格式:
if 判斷條件
then 命令1
else 命令2
Fi
判斷條件包括命令語句和測試語句兩種方式:
命令語句形式的判斷條件
多路條件判斷分支的if語句
格式為:
if 判斷條件1
then 命令1
elif 判斷條件2
then 命令2
……
else 命令n
Fi
其中elif是else if的縮寫
測試語句
有兩種格式,一種是使用關鍵字test,而另一種是使用方括號。格式如下:
test expression
[ expression ]
二者是等效的。同時要注意幾點
用于三種形式的測試:文件測試、字符串測試和數值測試
文件測試
字符串測試
數值測試
用邏輯操作符進行組合的測試語句
用邏輯操作符進行組合的測試語句實例
[ ! "$s1" -le 0 ]
! test "$s1" -le 0
[ -f "$s1" –a –w "$s1" ]
test –f "$s1" -a –w "$s1"
[ "$s1" –gt 0 –o "$s2" –lt 10 ]
test "$s1" –gt 0 –o "$s2" –lt 10
[ \( "$a" –gt 0 –a "$a" –lt 10 \) –a "$a" –ne 5 ]
test \( "$a" –gt 0 –a "$a" –lt 10 \) –a "$a" –ne 5
case語句
對同一變量進行多次的測試,比elif語句更簡單、簡潔
case string1 in
str1)
commands-list1;;
str2)
commands-list2;;
...
strn)
commands-listn;;
esac
使用case語句時應注意以下幾點
(1) 每個正則表達式后面可有一條或多條命令,其最后一條命令必須以兩個分號(;;)結束。
(2) 正則表達式中可以使用通配符。
(3) 如果一個正則表達式是由多個模式組成,那么各模式之間應以豎線“|”隔開。表示各模式是“或”關系,即只要給定字符串與其中一個模式相配,就會執行其后的命令表。
使用case語句時應注意以下幾點
(4) 各正則表達式是唯一的,不應重復出現。
(5) case語句以關鍵字case開頭,以關鍵字esac結束。
(6) case的退出(返回)值是整個結構中最后執行的那個命令的退出值。若沒有執行任何命令,則退出值為零。
for語句
格式:
for variable [in argument-list]
do
command-list
Done
其中的[in argument-list]部分為可選項,由于它的不同又可有三種形式。
[in argument-list]部分三種形式
[argument-list]為變量值表
變量variable依次取值表中各字符串
[argument-list]為文件的表達式
變量的值依次取當前目錄(或指定目錄)下與文件表達式相匹配的文件名,每取值一次,就進入循環體執行命令表,直到所有匹配的文件名取完為止。
[argument-list]為空
[argument-list]也可以用$*來代替,變量依次取位置參數的值,然后執行循環體中的命令表,直至所有位置參數取完為止。
while語句
格式為:
while expression
do
command-list
Done
作用:只要expression的值為真,則進入循環體,執行command-1ist中的命令,然后再做條件測試,直到測試條件為假時才終止while語句的行。
until語句
格式為:
until expression
do
command-list
done
作用: 只要expression的值為假,就執行command—lists的命令。
break和continue語句
break命令可以從循環體中退出來。格式為:
break [n]
continue命令跳過循環體中在它之后的語句,回到本層循環的開頭,進行下一次循環。格式為:
continue [n]
算術表達式
五種基本的算術運算:+(加)、-(減)、\*(乘)、/(除)和%(取模)。shell只提供整數的運算。格式如下:
expr n1運算符n2
例:
[expr 15 \* 15
注意:在運算符的前后都留有空格,否則expr不對表達式進行計算,而直接輸出它們。
自定義函數
在shell腳本中可以定義并使用函數。其定義格式為:
Function( )
{
command-list
}
函數應先定義,后使用。調用函數時,直接利用函數名調用。
Shell——流程控制語句(if、case、for、while等)
1.if語句
if語句用于條件判斷,執行符合條件的代碼塊。
2.case語句
case語句用于多分支選擇,通常用于替代if-elif-else結構,當需要判斷的條件較多時特別有用。
3.for循環
for循環用于遍歷列表中的每一個元素,通常用于處理數組或一系列的值。
4.while循環
while循環在條件為真時重復執行一段代碼,直到條件為假時停止。
5.until循環
until循環與while循環相反,條件為假時重復執行代碼塊,直到條件為真時停止。
總結
if語句用于條件判斷和分支執行。
case語句用于多分支選擇,適合匹配多個模式。
for循環用于遍歷列表或執行固定次數的循環。
while和until循環用于在條件滿足時反復執行某些代碼。
break和continue控制循環的執行流。
【Linux認證考試要點:shell程序控制結構語句】相關文章:
Linux認證考試科目設置01-18
Linux認證考試報考條件01-11
Linux認證基礎知識:linux操作系統目錄結構03-08
linux認證考試:FTP設置技巧03-21
Linux認證概念03-19
Linux認證優勢03-19
Linux認證考點03-19
Linux認證的概念03-25
思科認證CLDFND考試要點01-08