shell if语句
2023-02-18 16:46:49 时间
if 语句格式
单分支结构
#第一种
if <条件表达式>
then
指令
fi
#第二种
if <条件表达式>; then
指令
fi
实例1
#/bin/bash
read -p "请输入两个整数:" a b
if (( $a == $b ))
then
echo "两个数相等"
fi
双分支结构
if <条件表达式>
then
指令1
else
指令2
fi
示例2
#第一种写法
#!/bin/bash
read -p "请输入两个整数:" a b
if [ $# -ne 2 ] || [[ ! $a =~ [0-9]+$ ]] || [[ ! $a =~ [0-9]+$ ]]; then
echo "输入错误,请输入两个整数!"
fi
if (( $a == $b ))
then
echo "$a=$b"
else
echo "$a!=$b"
fi
#第二种写法
#!/bin/bash
read -p "请输入两个整数:" a b
#判断输入是否为空
[ -z "$a" ] || [ -z "$b" ] && {
echo "输入错误,不能为空值,请输入两个整数"
exit 1
}
#判断是否为整数
expr $a + 10 &>/dev/null
RETAL1=$?
expr $b + 10 &>/dev/null
RETAL2=$?
test $RETAL1 -eq 0 -a $RETAL2 -eq 0 || {
echo "输入错误,请输入两个整数"
exit 2
}
if [ "$a" -eq "$b" ]
then
echo "$a=$b"
else
echo "$a!=$b"
fi
多分支结构
if <条件表达式>
then
指令1
elif <条件表达式>
then
指令2
elif <条件表达式>
then
指令3
else
指令4
fi
示例3
#!/bin/bash
read -p "请输入成绩:" a
[ -z "$a" ] && {
echo "输入错误,数值为空"
exit 1
}
[[ ! "$a" =~ ^[0-9]+$ ]] && echo "输入错误,请输入数字" && exit 2
if [ "$a" -gt 90 ]
then
echo "优秀"
elif [ "$a" -ge 80 -a "$a" -lt 90 ]
then
echo "良好"
elif [ "$a" -ge 70 -a "$a" -lt 80 ]
then
echo "一般"
elif [ "$a" -ge 60 -a "$a" -lt 70 ]
then
echo "及格"
else
echo "不及格"
fi
相关文章
- Java编程中忽略这些细节,Bug肯定找上你
- 9个问题,带你掌握流程控制语句中的java原理
- 从IDC Marketscape报告看区块链政务数字化未来:权威解读新热点、新机遇
- chatGPT的火爆,并不偶然
- React 开发 | 常用 Hooks
- JDK19都出来了~是时候梳理清楚JDK的各个版本的特性了【JDK12特性讲解】
- Eolink 让我“重新认识“了自动化测试...
- 老板:你也把咱们网站弄成灰色——网站变灰色如何实现
- iptables规则案例
- ‘极锐’-一种新的锐化算法
- PS/LR滤镜插件套装 Nik Collection v5.3.0 Win/Mac
- Chrome插件:uBlock Origin – Chrome浏览器高效低占用的广告拦截插件
- 前端与区块链
- 云原生之微服务
- 集群动态环境管理神器 Modules
- 记 os_object_release Crash 排查
- 记 libAccessibility 通知 Crash 排查
- Ant Design Pro 中 点击子菜单的时候,其他菜单不自动收起来
- ETC 可视化
- 1267-Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_0900_ai_ci,IMPLIC for o...