linux脚本for循环编写,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

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

方式五:使用for循环内嵌if单分支实现

#!/bin/bash

for file in *.sh

do

if [ -f $file -a ! -x $file ]

then

chmod +x $file

echo "$file is have Permission !"

fi

done

注:以上脚本检查当前路径的脚本是否有执行权限,无权限的给予执行权限!(切记所有脚本都得和当前脚本在同一路径,否则需要根据实际情况修改for file in *.sh这句)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值