博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux Shell编程(19)——测试与分支
阅读量:5213 次
发布时间:2019-06-14

本文共 865 字,大约阅读时间需要 2 分钟。

case和select结构在技术上说不是循环,因为它们并不对可执行的代码块进行迭代.但是和循环相似的是,它们也依靠在代码块的顶部或底部的条件判断来决定程序的分支.
在代码块中控制程序分支
case (in) / esac
在shell中的case同C/C++中的switch结构是相同的.它允许通过判断来选择代码块中多条路径中的一条.它的作用和多个if/then/else语句相同,是它们的简化结构,特别适用于创建目录.
case "$variable" in ?"$condition1" ) ?command... ?;; ?"$condition2" ) ?command... ?;; esac
对变量使用""并不是强制的,因为不会发生单词分离.
每句测试行,都以右小括号)结尾.
每个条件块都以两个分号结尾;;.
case块的结束以esac(case的反向拼写)结尾.
例子:使用case
#!/bin/bash# 测试字符串范围echo; echo "Hit a key, then hit return."read Keypresscase "$Keypress" in  [[:lower:]]   ) echo "Lowercase letter";;  [[:upper:]]   ) echo "Uppercase letter";;  [0-9]         ) echo "Digit";;  *             ) echo "Punctuation, whitespace, or other";;esac      #  允许字符串的范围出现在[]中,          #+ 或者POSIX风格的[[中.#  在这个例子的第一个版本中,#+ 测试大写和小写字符串使用的是#+ [a-z] 和 [A-Z].#  这种用法将不会在某些特定的场合或Linux发行版中正常工作.exit 0

转载于:https://www.cnblogs.com/new0801/p/6176861.html

你可能感兴趣的文章
【转】Axure RP9.0.0.3661Team Edition激活码
查看>>
layui的select监听
查看>>
springboot集成mybatisplus小例子
查看>>
jqGrid设置单选
查看>>
mysql查看和修改最大连接数
查看>>
【转】查看电脑显卡型号及显卡性能
查看>>
windows安装reids
查看>>
mysql查询列为空
查看>>
bat启动OpenOffice4
查看>>
layui父页面获取子页面数据
查看>>
ztree实现拖拽移动和复制
查看>>
layui父页面执行子页面方法
查看>>
redis的window版本下载地址
查看>>
win运行canal
查看>>
idea右下角显示使用内存情况
查看>>
修改系统个人文件夹存储默认存放位置
查看>>
win10电脑休眠后无法唤醒的解决办法
查看>>
如何破解域管理员密码
查看>>
Windows Server 2008 R2忘记管理员密码后的解决方法
查看>>
IE11兼容IE8的设置
查看>>