一、if 條件
then 命令
elif 條件
then 命令 ...
else
命令
fi
[root@vm-paas scwyfy]# cat ifelifelse.sh
#!/bin/bash
read -p "請輸入考試成績 " s
if ((${s} >= 0 && ${s} < 60))
then
echo "不及格"
elif [[ (${s} > 60 || ${s} == 60) && ${s} < 70 ]]
then
echo "及格"
elif ((s >= 70 && s < 80))
then
echo "中等"
elif (( s >= 80 && s < 90))
then
echo "良好"
elif ((s >= 90 && s <= 100))
then
echo "優(yōu)秀"
else
echo "輸入的成績非法!"
fi
[root@vm-paas scwyfy]#
二、case 變量值 in
匹配模式1)
命令1
命令2...
;;
匹配模式2)
...
;; // 表示結束
*) // 表示未匹配就走這個
命令1
命令2...
;;
esac // 結束
[root@vm-paas scwyfy]# cat case.sh
#!/bin/bash
read -p "請輸入0-7的數(shù)字: " number
case $number in
1)
echo "星期一"
;;
2)
echo "星期二"
;;
3)
echo "星期三"
;;
4)
echo "星期四"
;;
5)
echo "星期五"
;;
6)
echo "星期六"
;;
7|0)
echo "星期日"
;;
*)
echo "無效數(shù)字"
;;
esac
三、 while 條件
do
命令1
命令2...
continue //跳過此次循環(huán)
break // 終止循環(huán)
done
[root@vm-paas scwyfy]# cat while.sh
#!/bin/bash
read -p "請輸入循環(huán)的次數(shù):" number
i=0
while ((i < number ))
do
let i++
if ((i == 3))
then
echo "跳過打印循環(huán)${i}"
continue
fi
if ((i == 5))
then
echo "終止${i}后面的循環(huán)"
break
fi
echo "循環(huán)${i}"
done
echo "循環(huán)結束"
四、for 值 in 值列表
do
命令1
命令2...
done
[root@vm-paas scwyfy]# cat for.sh
#!/bin/bash
for i in 1 3 5 7
do
echo "hello${i}"
done
五、select 值 in 值列表
do
命令1
命令2
...
break // 必須要用,不然要一直循環(huán)下去
done
[root@vm-paas scwyfy]# cat select.sh
#!/bin/bash
echo "您的愛好是什么?"
select hobby in "編程" "游戲" "運動" "籃球"
do
case $hobby in
編程)
echo "努力吧"
break
;;
游戲)
echo "遠離游戲"
break
;;
運動|籃球)
echo "運動挺好"
break;
;;
*)
echo "輸入有誤"
break
;;
esac
done
echo "您的愛好是${hobby}"