Shell是系統的用戶界面,提供了用戶與內核進行交互操作的一種接口。它接收用戶輸入的命令並把它送入內核去執行。
實際上Shell是一個命令解釋器,它解釋由用戶輸入的命令並且把它們送到內核。不僅如此,Shell有自己的編程語言用於對命令的編輯,它允許用戶編寫由shell命令組成的程序。Shell編程語言具有普通編程語言的很多特點,比如它也有循環結構和分支控制結構等,用這種編程語言編寫的Shell程序與其他應用程序具有同樣的效果。
總的來說,shell就是命令的集合,就跟我們在終端上敲命令差不多。
在說流程控制語句前我們說一些簡單的關係運算符
-eq 檢測兩個數是否相等 相等爲真
-ne 檢測兩個數是否相等 不相等爲真
-gt 相當於> ,左邊數大於右邊時爲真
-lt 相當於<,左邊數小於右邊時爲真
-ge 相當於>=,左邊數大於等於右邊時爲真
-le 相當於<=,左邊數小於等於右邊時爲真
下面我來簡單的說一說shell中的流程控制語句
if語句
**1.if **
if語句語法格式:
if 條件判斷
then
命令語句
…………
…………
fi
例如:
執行該文件試一試吧
2.if else
if else語句語法格式:
if 條件判斷
then
命令語句
…………
…………
else
命令語句
…………
…………
fi
執行結果
3. if else-if else
if else-if else語句語法格式:
if 條件判斷
then
命令語句
…………
…………
elif
條件判斷
then
命令語句
…………
…………
else
命令語句
…………
…………
fi
執行結果爲
for循環
與其他編程語言類似,shell支持for循環
for循環語法格式:
for n in 數1 數2 數3 …………
do
命令語句
done
例:
執行結果爲
while循環
同樣的,shell中也有while循環
while循環語法格式:
while 條件控制
do
命令語句
…………
done
例:
執行結果爲
下面介紹一種特殊的循環
until循環
until循環和while循環寫法上一摸一樣,但是while是條件爲真時執行,當條件爲假時跳出循環,而until與其剛好相反,條件爲假時執行,條件爲真時跳出循環
until循環語法格式:
until 條件控制
do
命令語句
…………
done
例
跳出循環
同樣的,有循環時我們就想要跳出循環,那麼就有break和continue
break
執行結果爲
continue
看來在shell腳本編程裏面break與continue的作用與我們在C中學習的差不多。