Shell脚本④循环语句for、while、until

目录

一.for

1. 九九乘法表

2.求1到10奇数和

3.累计加到100

(1)方法一

(2)方法2

二.while

1.猜价格小游戏

2.累加到100的方法三

三.until循环

1.累加到100方法四

四.嵌套循环

五.循环语句中break、exit和continue

1.break的使用

2.exit的使用

3.continue的使用


一.for

格式:

for 变量名 in   {list}
do
     命令
done

1. 九九乘法表

#!/bin/bash
for j in {1..9}
    do
       for i in `seq $j`
    do
	 echo -e "${i}x${j}=$[i*j] \t\c"
	 #\t tab键可以对齐
    done
	echo
done

2.求1到10奇数和

#/bin/bash
sum=0
for i in {1..10..2}
do
  sum=$[sum+i]
  let i++
done
echo "10以内的奇数和为:$sum"

3.累计加到100

(1)方法一
#!/bin/bash
sum=0
for iin {1..100}
do
sum=$[sum+i]
done
echo $sum

(2)方法2
#!/bin/bash
sum=0
for ((i=0;i<=100;i++))
do
sum=$[i+sum]
done
echo sum=$sum

二.while

格式:
while  [ 条件测试操作 ]
do                        #do代表循环的开始
    判断式/命令序列
done                     #done代表循环的结束

1.猜价格小游戏

#!/bin/bash
p=`echo $[RANDOM%1000+1]`
time=0
 
while true
do
let time++
read -p "请输入您猜测的价格(1-1000):" h
if [ $h -eq $p ]
then
echo "恭喜您猜中了,您一共猜测了$time次"
exit
elif [ $h -gt $p ]
then
echo "您猜测的价格过高"
else
echo "您猜测的价格过低"
fi
done

2.累加到100的方法三

#!/bin/bash
i=0
sum=0
while [ $i -le 100 ]
do
sum=$[i+sum]
let i++
done
echo $sum

三.until循环

格式:
until  [ 条件测试操作 ]
do
    判断式/命令序列
done

1.累加到100方法四

#!/bin/bash
sum=0
i=0
until [ $i -gt 100 ]
do
 sum=$[sum+i]
 let i++
done
echo "{1..100}的和:$sum"

四.嵌套循环

格式:
#!/bin/bash
for ((i=1;i<5;i++))
do
        echo 此${i}为外部循环
        for((j=1;j<4;j++))
        do
                echo -e "\t此${j}为内部循环"
        done
done

五.循环语句中break、exit和continue

1.break的使用

#!/bin/bash
for ((i=1;i<5;i++))
do      
        echo 此${i}为外部循环
        for((j=1;j<4;j++))
        do
            if [ $j -eq 3 ]			<------如果j的值为3
            then
                break				<------跳出当前循环(内部)
            fi  
        echo -e "\t此${j}为内部循环"
        done
done

2.exit的使用

#!/bin/bash
for ((i=1;i<5;i++))
do
        echo 此${i}为外部循环
        for((j=1;j<4;j++))
        do
            if [ $j -eq 3 ]					<------如果j的值为3
            then
                exit						<------结束当前脚本
            fi
        echo -e "\t此${j}为内部循环"
        done
done
 

3.continue的使用

#!/bin/bash
for ((i=1;i<5;i++))
do
        echo 此${i}为外部循环
        for((j=1;j<4;j++))
        do
            if [ $j -eq 2 ]					<------如果j的值为2
            then
                continue					<------中止循环中本次的命令,但不会完全中止整个循环或脚本
            fi
        echo -e "\t此${j}为内部循环"
        done
done

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-26 18:50:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-26 18:50:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-26 18:50:03       82 阅读
  4. Python语言-面向对象

    2024-01-26 18:50:03       91 阅读

热门阅读

  1. Angular封装HttpClient文件下载

    2024-01-26 18:50:03       43 阅读
  2. OpenGL顶点规范和绘图命令:图元类型 Primitive Types

    2024-01-26 18:50:03       48 阅读
  3. Win32 MDI 程序学习1

    2024-01-26 18:50:03       52 阅读
  4. 2d关键点可视化 coco转h36m人体关键点

    2024-01-26 18:50:03       53 阅读
  5. 获取Kong

    2024-01-26 18:50:03       51 阅读
  6. 构造函数更改或新增原型链

    2024-01-26 18:50:03       48 阅读
  7. Python中如何向列表中添加元素?

    2024-01-26 18:50:03       56 阅读
  8. 什么是多视角回归?

    2024-01-26 18:50:03       51 阅读
  9. 列举MySQL对于Where子句的优化

    2024-01-26 18:50:03       46 阅读