您的位置:首页 > 运维架构 > Shell

第3章 shell结构化命令------------( 双方括号命令及操作实例、case命令)

2017-04-22 00:00 465 查看

3.3.2 使用双方括号

双方括号命令为字符串比较高级功能。双方括号命令的格式是:[[ expression ]]。双方括号包围的expression使用在test命令中使用的标准字符串比较。但是它提供了test命令没有的另一功能,即模式匹配。

在模式匹配中,可以定义与字符串值相匹配的正则表达式。

#!/bin/bash
#使用模式匹配
if [[ $USER==ew* ]];then
echo "当前用户$USER"
if [[ Demo1==./Dem* ]];then
date;which
Demo1
fi
else
echo "不存在开头为ew的命令!"
fi




3.3.3 case命令

case命令以列表导向格式检查单个变量的多个值:



case命令将指定的变量与不同的模式进行比较。如果变量与模式匹配,shell执行为该模式指定的命令。可以在一行中列出多个模式,使用竖条(|)操作符将每个模式分开。星号(*)是与任何列出的模式都不匹配的所有值。

case命令操作实例如下所示:

#!/bin/bash
#case使用实例
da=Demo3
case $da in
Demo1 | Demo2) Demo1;;
Demo3) Demo3;;
Demo4) Demo4;;
*) ls -al -F;;
esac


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐