欢迎登陆真网站,您的到来是我们的荣幸。 登陆 注册 忘记密码? ☆设为首页 △加入收藏
欢迎加入真幸福QQ群
电脑知识: 基础知识 网络技术 操作系统 办公软件 电脑维修 电脑安全 windows7 windows8 windows10 服务器教程 平板电脑 视频播放教程 网络应用 互联网 工具软件 浏览器教程 QQ技巧 输入法教程 影视制作 YY教程 wps教程 word教程 Excel教程 PowerPoint
云南西双版纳特产小花糯玉米真空包装


shell——切分文件名
Apache安装路径
Nginx安装路径
linux登录方式的设置
Linux下基于socket多线程并发通信的实现
Nginx服务器缓存设置实例讲解
阿里云风云令可以同时绑定多个帐号么?
Win7 64位旗舰版系统下打开较大Word文档时反应很慢如何解决
服务器内存常见术语
linux查看硬件信息
Linux下shell中case命令详解
【 来源:网络 】【 点击:1 】 【 发布时间:2017_03_03 08:59:59 】

   linux下shell中的case名字和C/C++中的switch类似,但是shell中的case更强大和复杂。

  1、强大主要体现在:shell中case中的关键字可以是字符串类型,而每一项中可以包含正则表达式。

  2、复杂主要体现在:shell中case的每一个项后有三个选择:break(常规的break)、unconditional follow up(无条件继续)和conditional follow up(有条件继续)。

  这篇文章的重点是上面的第2点。

  case的无条件继续和有条件继续是bash 4.1.x及之后的版本中才有的特性。

  执行如下命令可以查看你当前bash的版本

  echo $BASH_VERSION

  常规的break是在每一项后面加;;

  无条件继续是在每一项后面加;&

  有条件继续实在每一项后面加;;&

  测试代码

  #!/bin/bashecho "Test No.1 ..."case "1" in 1) echo '1' ;;& 2) echo '2' ;; 3) echo '3' ;; ?) echo '?' ;; *) echo '*' ;;esacecho "Test No.2 ..."case "1" in 1) echo '1' ;; 2) echo '2' ;;& 3) echo '3' ;; ?) echo '?' ;; *) echo '*' ;;esacecho "Test No.3 ..."case "1" in 1) echo '1' ;& 2) echo '2' ;; 3) echo '3' ;; ?) echo '?' ;; *) echo '*' ;;esacecho "Test No.4 ..."case "1" in 1) echo '1' ;; 2) echo '2' ;& 3) echo '3' ;; ?) echo '?' ;; *) echo '*' ;;esac

  测试结果:

  Test No.1 ...1?Test No.2 ...1Test No.3 ...12Test No.4 ...1

本网站由川南居提供技术支持,fkzxf版权所有 浙ICP备12031891号
淳安分站 淳安分站