1.順序執(zhí)行
shell腳本按從上到下的順序依次執(zhí)行哲戚,除非使用了選擇、循環(huán)等執(zhí)行流程千所。
2.選擇執(zhí)行
2.1 if
# 格式一
if 條件; then
# 語句
fi
# 格式二
if 條件; then
語句
else
語句
fi
# 格式三
if 條件; then
語句
elif 條件; then
語句
fi
# 格式四
if 條件; then
語句
elif 條件; then
語句
else
語句
fi
2.2 case
case expression in
pattern1 )
statements ;;
pattern2 )
statements ;;
*)
... ;;
esac
3.循環(huán)執(zhí)行
3.1 for
# 格式一
for 變量 in 列表; do 循環(huán)體; done;
# 格式二
for ((變量=初始值; 條件判斷; 變量變化)); do 循環(huán)體; done;
示例
# 打印99乘法表一
for j in {1..9}; do
for i in $(seq 1 $j); do
echo -n -e "${i}X${j}=$[${i}*${j}]\t"
done
echo
done
# 打印99乘法表二
for ((i=1;i<=9;i++));do
for ((j=1;j<=$i;j++));do
echo -n -e "${i}x${j}=$(($i*$j))\t"
done
echo
done
3.2 while`
while CONDITION; do
循環(huán)體
循環(huán)控制變量修正表達(dá)式
done
示例
# 求1-100之和
declare -i sum=0;
declare -i i=1;
while [ $i -le 100 ];do
sum+=$i
i+=1
done
echo $sum
3.3 until
until CONDITION; do
循環(huán)體
循環(huán)控制變量修正表達(dá)式
done
示例
# 求1-100之和
declare -i sum=0;
declare -i i=1;
until [ $i -gt 100 ];do
sum+=$i
i+=1
done
echo $sum