根据实时的工作需求来调整具体的执行命令,根据某些条件实现自动循环执行的条件,Linux通过 4 种流程控制语句来学习编写难度更大、功能更强的 Shell 脚本。这4种流程控制语句分别是:if、for、while、case,这四种语句的用法也一样。
if 条件测试语句可以让脚本根据实际情况自动执行相应的命令,if 语句分为单分支结构、双分支结构、多分支结构,if 条件语句的单分支结构由 if、then、fi 关键词组成,格式为:
if 条件测试操作
then 命令序列
fi
双分支结构由if、then、else、fi关键词组成,格式为:
if 条件测试操作
then 命令序列1
else 命令序列2
fi
多分支结构由if、then、else、elif、fi 关键词组成,格式为:
if 条件测试操作1
then 命令序列1
elif 条件测试操作2
then 命令序列2
else 命令序列3
fi
for条件循环语句允许脚本一次性读取多个信息,然后逐一对信息进行操作处理。格式为:
for 变量名 in 取值列表
do 命令序列
done
while 条件循环语句是一种让脚本根据某些条件来重复执行命令的语句,它的循环结构往往在执行前并不确定最终执行的次数,完全不同于 for 循环语句中有目标、有范围的使用场景。while 循环语句通过判断条件测试的真假来决定是否继续执行命令,若条件为真就继续执行,为假就结束循环。while语句的语法格式为:
while 条件测试操作
do 命令序列
done
case条件测试语句是在多个范围内匹配数据,若匹配成功则执行相关命令并结束整个条件测试;而如果数据不在所列出的范围内,则会去执行星号(*)中所定义的默认命令。case语句的语法格式为:
case 变量值 in
模式1)
命令序列1
;;
模式2)
命令序列2
;;
*)
默认命令序列
esac