while until 循环

while  [ 条件为真 ]

do 

        循环体

done

until  [ 条件为假 ]

do

        循环体

done

eg:分别使用until和while分别实现192.168.0.0/24

网段内,地址是否能够ping通,若ping通则输出"success!",若ping不通则输出"fail!"

while:

#!/bin/bash

ipnet='192.168.0'

i=1

while [ $i -lt 255 ]

do

  ping -w 1 -c 1  ${ipnet}.$i  &>/dev/null

  if [ $? -eq 0 ];then

      echo "${ipnet}.${i}..success"

  else

      echo "${ipnet}.${i}..fail!"

  fi

  i=$(( $i + 1 ))

done

还可以:

if  ping -w 1 -c 1 ${ipnet}.$i &>/dev/null ;then

else

fi


until: 

#!/bin/bash

ipnet='192.168.0'

i=1

until [ $i -ge 255 ]

do

  ping -w 1 -c 1  ${ipnet}.$i  &>/dev/null

  if [ $? -eq 0 ];then

      echo "${ipnet}.${i}..success"

  else

      echo "${ipnet}.${i}..fail!"

  fi

  i=$(( $i + 1 ))

done

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容