shell脚本之for循环

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本之for循环相关的知识,希望对你有一定的参考价值。

shell常用for循环写法

方式:使用外部赋值实现

> #!/bin/bash
sum=0
for i in {1..50}
do
let "sum+=i"
done
echo $sum

注:以上脚本实现计算从1加到50的总和!

方式:使用for单循环实现

#!/bin/bash
for name in cat namelist
do
echo "$name"
done
echo "循环结束"

注:以上脚本实现打印列表中名字,打印完循环结束!

方式:使用内嵌if多分支语句实现

#!/bin/bash
for ip in 192.168.152.{1..254}
do
ping -c 2 -i 0.1 -W 1 $ip &> /dev/null
if [ $? -eq 0 ]
then
echo "$ip is up !"
else
echo "$ip is down !"
fi
done

注:以上脚本实现批量测试哪个IP地址不通(-c 2 是ping两个包,-i 0.1 是指ping通第一个包到ping第二个包的时间间隔是0.1秒, -W 1 是指如果ping不通,等待的时间间隔是1秒)

方式:使用for循环内嵌for循环实现

#!/bin/bash
for month in Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
do
for week in 1 2 3 4
do
echo "this week is in $month of $week week !"
done
done

注:以上脚本实现循环打印每个月的每周!

以上是关于shell脚本之for循环的主要内容,如果未能解决你的问题,请参考以下文章

Shell脚本之forwhile循环语句和case分支语句

shell脚本之for循环

shell脚本之for循环

shell脚本之for循环

shell 脚本之循环使用 for while 详解

Shell脚本编程之循环语句