天天看点

Linux shell脚本 for while 循环循环for循环及while循环的应用

文章目录

  • 循环
    • for语句结构(常用)
    • while语句结构(常用)
    • until语句结构
  • for循环及while循环的应用

循环

        在实际工作中,当某一些操作需要重复的执行,而每次执行时仅仅是处理的对象不一样。例如,有一个文件每一行存放一条IP地址的记录,根据记录ping判断主机ip是否存活。正常情况下,是每一条记录单独提取出来执行ping命令,这样做工作效率地下,把ping命令放在循环里,把IP地址作为处理的对象给ping命令执行,提高工作效率。

for语句结构(常用)

for 变量名 in 取值列表

do

    命令序列

done

while语句结构(常用)

while 条件测试操作

do

    命令序列

done

  • while循环 条件测试操作 结果为真才会接着循环
  • break 退出当前的循环
  • continue 退出当前的操作,继续执行下一次循环
  • exit 直接退出脚本 可以跟返回码,用来监控脚本错误

until语句结构

until 条件测试操作

do

    命令序列

done

  • until循环 条件测试操作 结果为假才会接着循环

for循环及while循环的应用

[[email protected] ~]# vim dysjx.sh 

#!/bin/bash
#打印菱形的脚本
#作者:lvbin
read -p "请输入三角形边长: " a
for ((i=1;i<=$a;i++))
do
     for ((j=1;j<=$a-$i;j++))
     do
     echo -n " "
     done
     for ((j=1;j<=$i;j++))
     do
     echo -n "* "
     done
     echo
done
for ((i=1;i<=$a-1;i++));do
        for ((j=1;j<=$i;j++))
        do
        echo -n " "
        done

        for ((j=1;j<=$a-$i;j++))
        do
        echo -n "* "
        done
        echo
done
           
Linux shell脚本 for while 循环循环for循环及while循环的应用
#!/bin/bash
#while循环的脚本
#作者:lvbin

read -p "计算1到?的累加和,请输入?的值" num
sum=0
i=1
while [ $i -le $num ]
do
        let sum+=$i
        let i++
done
echo "1-$num的总和是:"$sum
           
Linux shell脚本 for while 循环循环for循环及while循环的应用

继续阅读