| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦   
共有 660 人关注过本帖
标题:shell程序设计-<控制结构>-case语句
收藏  订阅  推荐  打印
neverTheSame
Rank: 6Rank: 6
等级:金牌会员
帖子:1486
积分:15858
威望:9
来自:江西农业大学
注册:2006-11-24
shell程序设计-<控制结构>-case语句

*/ --------------------------------------------------------------------------------------
*/ 出自: 快乐编程 http://hi.bccn.net/108519
*/ 作者: neverTheSame E-mail:zhaoxufeng9997@126.com QQ:475818502
*/ 时间: 2008-6-1
*/ 声明: 尊重作者劳动,转载请保留本段文字
*/ --------------------------------------------------------------------------------------

case语句 :它能够把变量的内容与多个模板进行匹配,再根据成功匹配的模板去决定应该执行哪部分代码。
  使用格式:
  case 匹配母板 in
    模板1 [ | 模板2 ] … )  语句组 ;;
    模板3 [ | 模板4 ] … )  语句组 ;;
  esac
  case语句的匹配是从上往下地匹配顺序。因此,case语句编写的原则是从上往下,模板从特殊到普通。在C语言里,case语句中有default模板,而在shell程序设计中,可能将模板写成*,就可以完成相同的功能。

case语句的模板支持匹配
  匹配以n开头的所有情况: n*
  匹配yes的所有字母大小不同的情况: [yY][eE][sS]
  但不支持{}匹配,因为模板可以使用 | 就可以达到目的。

例程:

#!/bin/sh

echo "Please input \"yes\" or \"no\""

read var

case "$var" in

[yY][eE][sS] ) echo "Your input is YES" ;;

[nN][oO]     ) echo "Your input is YES" ;;

*            ) echo "Input Error!"      ;;

esac

exit 0
2008-6-25 01:13
guixiaolan
Rank: 12Rank: 12Rank: 12
等级:版主
帖子:340
积分:4114
威望:6
注册:2006-4-20

不管怎样,还是支持吧

[url=http://www.91cool.net/]http://ip.91cool.net/sign/free.gif[/url]
2008-6-25 02:13
共有 659 人关注过本帖
发新话题
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.050800 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved