Linux系统之Shell脚本:for、while循环及脚本实操

目录

一.for循环

1.基本格式

2.类C语言格式

二.while循环

1.基本格式

2.死循环语句

三.跳出循环

1、continue跳出循环

 2.break跳出循环

四.常用循环脚本实例

1.循环ping测试某个网络


一.for循环

用于已知循环次数的场景

1.基本格式

for   变量名称(注意是名称不是变量$等)    [  in   名称范围  ] (可以不写)

do   

执行内容    若满足循环则做什么动作

done    for循环结束标志

2.类C语言格式

for (( 表达式1 ;表达式2;表达式3   ))

do

执行内容    若满足循环则做什么动作

done           for循环结束标志

表达式1:定义变量并赋值

表达式2:决定是否循环

表达式3:决定循环变量如何改变,决定循环什么时候结束

二.while循环

用于不知道循环次数,需要主动结束循环或达到条件结束循环。 

1.基本格式

while   [ 判断条件] 使用while循环满足条件执行do,不满足不执行 

do       

执行动作   while循环执行动作

done         while循环结束标志

2.死循环语句

①while  [1  -eq  1]   判断条件写一个永久为真的条件 

    do       一直执行do内的命令

    done

②while  true        直接写判断条件为真

    do       一直执行do内的命令

    done

③while :         判断条件为冒号也表示死循环

    do       一直执行do内的命令

    done

三.跳出循环

1、continue跳出循环

表示满足continue条件时跳出循环,但是不影响后续循环执行

 2.break跳出循环

在某个循环中遇到break直接结束此次循环,但是不影响外边嵌套的循环。

break  [数字] 结束数字中的几次循环,若为2则结束自己所在循环和外边嵌套的一层循环,若为3则结束自己所在循环和外边嵌套的2层循环

四.常用循环脚本实例

1.循环ping测试某个网络

需求:测试用户输入的某个32位网段是否可以ping通,且若可以ping通将此ip输出到文件host.txt中。 

思路:

  • 第一步读取用户输入的32位网段
  • 第二步使用for循环生成用户输入网段的所有ip。
  • 第三步使用ping命令在循环中测试用户输入网段内所有ip,注意指定ping包个数和超时结束时间,否则一直ping。
  • 第四步将循环检查网络连通性放入后台执行

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值