作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。
我们前面学习了那么多命令,以及涉及到部分逻辑判断的问题。从简单来说,他就是Shell编程,只有由于命令比较单一,只能实现比较简单的功能。如果我们把多个操作都放到一起去,并添加更复杂的逻辑在里面,他就是Shell编程。所以我们主要从以下几个方面讲解Shell编程:
Shell编程-什么是shell
Shell编程-变量
Shell编程-数据类型
Shell编程-逻辑判断
Shell编程-if判断
Shell编程-if和else
Shell编程-while循环
Shell编程-for循环
Shell编程-case
Shell编程-break(本章节)
Shell编程-continue
Shell编程--函数
Shell编程-案例(一)
Shell编程-案例(二)
Shell编程-小结
前面我们说过的无论是while循环还是for循环,它会在达到预设条件以后才会退出循环,而我们有些需求是并不需要全部执行完成所有逻辑,而是在达到一定条件就会自动退出。
在Shell脚本中,break
是一个关键字,用于终止当前所在的循环(for
、while
或 until
循环)。它允许脚本在满足某个条件时提前退出循环,而不必等待循环条件自然结束。
使用方法
while condition
do
# 循环体代码
if [ some_condition ]; then
break
fi
done
或者:
for var in list
do
# 循环体代码
if [ some_condition ]; then
break
fi
done
-
break
可以在循环体中的任何位置使用。 -
当
break
被执行时,它会立即终止最近的循环(while
、for
或until
循环),并跳出循环体,继续执行循环后的代码。
示例
在 while
循环中使用 break
#!/bin/bash
# 使用 while 循环输出数字,但遇到 5 就停止
number=1
while [ $number -le 10 ]
do
echo "Number: $number"
if [ $number -eq 5 ]; then
break
fi
number=$((number + 1))
done
echo "Outside the loop."
在这个示例中,while
循环会输出数字 1 到 5,当 number
的值等于 5 时,执行 break
终止循环,并输出 "Outside the loop."。
在 for
循环中使用 break
#!/bin/bash
# 使用 for 循环输出数组元素,但遇到特定元素时就停止
fruits=("apple" "banana" "cherry" "date")
for fruit in "${fruits[@]}"
do
echo "Fruit: $fruit"
if [ "$fruit" = "cherry" ]; then
break
fi
done
echo "Outside the loop."
在这个例子中,for
循环会输出数组 fruits
的元素,但当 fruit
的值等于 "cherry" 时,执行 break
终止循环,并输出 "Outside the loop."。
总结
1.break只会退出当前循环,但是并不会退出整个程序,比如代码里面的echo语句还是会执行的。
2.和break相对应的是continue,它只是退出本次循环。
3.有的老师用一个巡楼来说明这个break。比如有8个房间,按照正常的循环,我们从1-1 开始到1-8结束。如果我们在1-6房间里面放置了一个break,当巡楼到1-6房间以后,它就会触发break,后面的1-7和1-8房间就不会巡楼了。
运维小路
一个不会开发的运维!一个要学开发的运维!一个学不会开发的运维!欢迎大家骚扰的运维!
关注微信公众号《运维小路》获取更多内容。