case 语句格式:
case value in (表达式)
pattern1)
command
;;
pattern2)
command
;;
*)
command
esac
实例:菜单选择
#!/bin/bash
Menu=(beef,noodles,rice,juice)
echo "The menu is:"
for i in ${Menu[*]}
do
echo "$i"
done
read -p "Please choose one:" food
case $food in
beef)
echo "You choose beef!"
;;
noodles)
echo "You choose noodles!"
;;
rice)
echo "You choose rice!"
;;
juice)
echo "You choose juice!"
;;
*)
echo "Don't have this one!"
;;
esac
[root@jiangpeisi shell]# sh menu.sh
The menu is:
beef,noodles,rice,juice
Please choose one:noodles
You choose noodles!
select 语法格式:
select i in (表达式)
do
command
done
实例:测试服务状态
#!/bin/bash
PS3="Please enter your select menu:"
select i in http php mysql quit
do
case $i in
http)
echo "Test http's state!"
;;
php)
echo "Test php's state!"
;;
mysql)
echo "Test mysql's state!"
;;
quit)
echo "Exit!"
exit
esac
done
[root@jiangpeisi shell]# sh lnmp.sh
1) http
2) php
3) mysql
4) quit
Please enter your select menu:1
Test http's state!
Please enter your select menu:2
Test php's state!
Please enter your select menu:3
Test mysql's state!
Please enter your select menu:4
Exit!