在shell编程中,对于多分支判断,用if 虽然也可以实现,但有些时候,写起来很麻烦,也不容易代码理解。这个时候,可以考虑case。大道理不讲了,先给出个简单的demo吧
#! /bin/sh -
name=`basename $0 .sh`
case $1 in
s|start)
echo "start..."
;;
stop)
echo "stop ..."
;;
reload)
echo "reload..."
;;
*)
echo "Usage: $name [start|stop|reload]"
exit 1
;;
esac
exit 0
注意:1、*) 相当于其他语言中的default。
2、除了*)模式,各个分支中;;是必须的,;;相当于其他语言中的break
3、 | 分割多个模式,相当于or
本文介绍了一种Shell脚本中的多分支判断方法——使用case语句。通过一个简单的示例展示了case语句的基本语法及特点,如默认分支(*)、分支结束标记(;;)以及模式间的逻辑或(|)。
3063

被折叠的 条评论
为什么被折叠?



