shell编程之循环
shell编程之循环
一、循环
定义:循环 (Loop) 是计算机编程中非常重要的一种结构,其主要目的是为了简化代码编写,提高代码的重复利用率,以及提高程序的效率。
1.循环和遍历
循环是一种控制流程的结构,用于重复执行一段代码,
遍历是一种数据操作的过程,用于访问并处理数据结构中的每个元素.
在某些情况下,循环和遍历可以结合使用,以便在循环中遍历数据结构并对其进行操作。
2.循环的优势
重复执行代码:通过使用循环,可以在程序中重复执行一段代码,从而避免代码的重复编写,减少程序代码量,提高程序的可读性和可维护性。
简化程序逻辑:使用循环可以使程序逻辑更加简洁明了,提高程序的可读性和可理解性,降低代码出错的可能性
提高代码的重复利用率:通过将重复的代码封装在循环结构中,可以提高代码的重复利用率,减少代码冗余。
提高程序的效率:循环可以让程序自动化地执行重复任务,从而减少人工于预的次数,提高程序的效率和性能
二、for循环语句
1.for语句的结构
读取不同的变量值,用来逐个执行同一组命令
格式:
for 变量名 in 取值列表
do
命令序列
done
2.for循环示例
根据IP地址检查主机状态
1.IP地址存放在host_ip文件中,每行一个
2.使用ping命令检测各主机的连通性
a = 192.168.1.
for i in {1..254}
do
{
ping -w 2 -c 2 $a$i &> /dev/null
if [ $? == 0 ]
then echo $a$i >> host_ip
fi
}&
done
三、while循环语句
1.while语句结构
重复测试某个条件,只要条件成立则反复执行
格式:
while 条件测试操作
do
命令序列
done
2.while语句应用示例
提示用户输入一个小于等于100的整数,并计算从1到该数之间所有整数的和
read -p "请输入一个小于等于100的整数:" num
while [[ $num -gt 100 ]]; do
read -p "输入的数字超过了100,请重新输入一个小于等于100的整数:" num
done
total=0
for ((i=1; i<=num; i++)); do
total=$(( total + i ))
done
echo "从1到$num之间所有整数的和为:$total"
四、until循环
until循环与for,while循环不同的是,until循环是只要条件不符合就会一直循环,直到条件符合后才会退出循环
格式:
until 条件测试操作
do
命令序列
done
五、跳出循环
1.break
在循环内部,当执行到 break 命令时,会立即跳出当前的循环,停止循环执行,然后继续执行下一条指令。可以使用 break 命令来提前终止循环,例如当达到特定条件时或者已经执行了足够的次数。
2.continue
在循环内部,当执行到 continue 命令时,会跳过本次循环剩余的代码,并继续下一次循环。可以使用 continue 命令来跳过循环中的某些操作,例如在特定条件下跳过一次循环,或者只执行符合条件的循环。
3.exit
在循环内部,当执行到 continue 命令时,会退出整个脚本。可以使用 exit命令来提前终止整个脚本。
六、死循环
死循环也就是无限循环,是指程序陷入无法出来,而持续运行的一种情形,可能会导致Linux系统死机,导致计算机卡死等现象
一下是常见的几种死循环
for ((;;)) ##直接写判断条件为真(for循环)
while [ 1 -eq 1 ] ##判断条件为一个永久为真的条件
while true ##直接写判断条件为真(while循环)
while : ##判断条件为冒号也表示死循环
linux · 目录
上一篇时间服务器操作(Chrony)
凉兮的运维日记
关注后可发消息