请选择 进入手机版 | 继续访问电脑版

CNOP社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 163|回复: 0

linux shell多个选项case的实例

[复制链接]

24

主题

25

帖子

277

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
277
发表于 2017-8-21 09:35:28 | 显示全部楼层 |阅读模式
  • #!/bin/bash   
  •   
  • # 未经处理的地址资料   
  •   
  • clear # 清屏.   
  •   
  • echo "          Contact List"   
  • echo "          ------- ----"   
  • echo "Choose one of the following persons:"   
  • echo  
  • echo "[E]vans, Roland"   
  • echo "[J]ones, Mildred"   
  • echo "[S]mith, Julie"   
  • echo "[Z]ane, Morris"   
  • echo  
  •   
  • read person  
  •   
  • case  "$person"  in   
  • # 注意, 变量是被""引用的.   
  •   
  •   "E"  | "e"  )  
  •   # 接受大写或者小写输入.   
  •   echo  
  •   echo "Roland Evans"   
  •   echo "4321 Floppy Dr."   
  •   echo "Hardscrabble, CO 80753"   
  •   echo "(303) 734-9874"   
  •   echo "(303) 734-9892 fax"   
  •   echo "revans@zzy.net"   
  •   echo "Business partner & old friend"   
  •   ;;  
  • # 注意, 每个选项后边都要以双分号;;结尾.   
  •   
  •   "J"  | "j"  )  
  •   echo  
  •   echo "Mildred Jones"   
  •   echo "249 E. 7th St., Apt. 19"   
  •   echo "New York, NY 10009"   
  •   echo "(212) 533-2814"   
  •   echo "(212) 533-9972 fax"   
  •   echo "milliej@loisaida.com"   
  •   echo "Ex-girlfriend"   
  •   echo "Birthday: Feb. 11"   
  •   ;;  
  •   
  • # 后边的 Smith 和 Zane 的信息在这里就省略了.   
  •   
  •           * )  
  •    # 默认选项.   
  •    # 空输入(敲回车RETURN), 也适用于这里.   
  •    echo  
  •    echo "Not yet in database."   
  •   ;;  
  •   
  • esac  
  •   
  • echo  
  •   
  • #  练习:   
  • #  -----   
  • #  修改这个脚本, 让它能够接受多个输入,   
  • #+ 并且能够显示多个地址.   
  •   
  • exit 0  


经上方法同样可以改成数字,如下:
#!/bin/bash
clear   
echo "######################### discription #################################"
echo "Please select the project you want to deploy(Default all):"
echo "1. discription"
echo "2. discription"
echo "3. discription"

echo  
echo  

read person  

case  "$person"  in   

  "1"  )  
  # 接受大写或者小写输入.   
  echo  
  echo "1"   

  ;;
  ""  )
  echo
  echo "empty"

  ;;   

  "2" )  
  echo  
  echo "3"

  ;;

  "3" )
  echo
  echo "3"

  ;;  
          * )  
   echo  
   echo "The input is incorrect. Please rerun the program."   
  ;;  

esac  

echo  

exit 0




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|CNOP社区 ( 豫ICP备14008196号

GMT+8, 2017-10-19 15:02 , Processed in 0.702508 second(s), 24 queries .

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表