Shell if-fi 条件语句

在 Shell 脚本 中,if ... fi 用于根据条件执行不同的命令块,是最常用的流程控制结构之一。

#!/bin/bash
read -p "请输入一个数字: " num
if [ $num -gt 10 ]; then
echo "数字大于 10"
elif [ $num -eq 10 ]; then
echo "数字等于 10"
else
echo "数字小于 10"
fi

上例中,脚本会根据输入的数字大小输出不同的结果。

基本用法

  • 单条件判断

if [ 条件 ]; then
命令
fi

当条件为真时执行命令,否则跳过。

  • 双分支判断

if [ 条件 ]; then
命令1
else
命令2
fi

条件为真执行命令1,否则执行命令2。

  • 多分支判断

if [ 条件1 ]; then
命令1
elif [ 条件2 ]; then
命令2
else
命令3
fi

依次判断多个条件,匹配到第一个为真时执行对应命令。

注意事项

  1. 方括号内必须有空格:[ $a == $b ] 正确,[$a==$b] 错误。

  2. 支持多种运算符:算术、关系、逻辑、字符串、文件测试等。

  3. 文件测试运算符如 -f file 检查文件是否存在且为普通文件,-d dir 检查目录是否存在。

这种结构在 Shell 自动化脚本中非常常见,例如批量文件处理、系统监控、自动部署等场景都离不开它。

posted @ 2026-03-06 09:35  DBA日记  阅读(12)  评论(0)    收藏  举报