shell脚本----循环小案例!

Posted handsomeboy-东

tags:

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

矩形

[root@localhost ww]# vim star.sh 
#!/bin/bash
read -p "请输入星星的规格 :" p
for ((i=1;i<=$p;i++))
do
        for ((j=1;j<=$p;j++))
        do
                echo -n "* "
        done
        echo
done
[root@localhost ww]# bash star.sh 
请输入星星的规格 :7
* * * * * * * 
* * * * * * * 
* * * * * * * 
* * * * * * * 
* * * * * * * 
* * * * * * * 
* * * * * * * 

等腰三角形

[root@localhost ww]# vim d.sh
#!/bin/bash
#等腰三角形
read -p "请输入行数 :" sum
for ((i=1;i<=$sum;i++))
do
        for ((j=$sum;j>$i;j--))
        do
                echo -n " "
        done
        for ((k=1;k<=$i;k++))
        do
                echo -n "* "
        done
        echo
done
[root@localhost ww]# bash d.sh
请输入行数 :10
         * 
        * * 
       * * * 
      * * * * 
     * * * * * 
    * * * * * * 
   * * * * * * * 
  * * * * * * * * 
 * * * * * * * * * 
* * * * * * * * * * 

九九乘法表

[root@localhost ww]# vim b.sh
#!/bin/bash
#制作九九乘法表
for ((i=1;i<=9;i++))
do
        for ((j=1;j<=i;j++))
        do
                echo -n "$i*$j=$[$i*$j] "
        done
        echo
done
[root@localhost ww]# bash b.sh
1*1=1 
2*1=2 2*2=4 
3*1=3 3*2=6 3*3=9 
4*1=4 4*2=8 4*3=12 4*4=16 
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 

菱形

[root@localhost ww]# vim a.sh
#!/bin/bash
#菱形
read -p "请输入行数 :" sum
let  h=$sum-1
for ((i=$sum;i>0;i--))
do
        for ((j=1;j<=$i;j++))
        do
                echo -n " "
        done
        for ((k=$sum;k>=$i;k--))
        do
                echo -n -e "\\e[33m*\\e[0m"
        done
        for ((c=$h;c>=$i;c--))
        do
                echo -n -e "\\e[34m*\\e[0m"
        done
        echo
done

for ((a=1;a<=$sum;a++))
do
        for ((b=1;b<=$a;b++))
        do
                echo -n " "
        done
        for ((g=$sum;g>=$a;g--))
        do
                echo -n -e "\\e[35m*\\e[0m"
        done
        for ((d=$h;d>=$a;d--))
        do
                echo -n -e "\\e[32m*\\e[0m"
        done


        echo
done

在这里插入图片描述

六芒星

[root@localhost ww]# vim 6.sh
#!/bin/bash
for  ((i=1;i<=5;i++))
    do
            for  ((j=1;j<=19-$i;j++))
                    do
                      echo -n " "
                    done
            for  ((k=1;k<=$[$i*2-1];k++))
                    do
                      echo -n -e "\\e[32m*\\e[0m"
                    done
    echo ""
 done
for  ((i=1;i<=3;i++))
    do
            for  ((j=1;j<=3*$i-2;j++))
                    do
                    echo -n " "
                    done
            for  ((k=1;k<=41-6*$i;k++))
                    do
                    echo -n -e "\\e[5;33m*\\e[0m"
                    done
    echo ""
    done
for  ((i=1;i<=4;i++))
    do
            for  ((j=1;j<=12-3*$i;j++))
                    do
 echo -n " "
                    done
            for  ((k=1;k<=12+6*$i;k++))
                    do
                    echo -n -e "\\e[5;34m*\\e[0m"
                    done
    echo ""
    done
for  ((i=5;i>=1;i--))
    do
            for  ((j=1;j<=19-$i;j++))
                    do
                      echo -n " "
                    done
            for  ((k=1;k<=$[2*$i-1];k++))
                    do
                      echo -n -e "\\e[35m*\\e[0m"
                    done
    echo ""
    done
[root@localhost ww]# bash 6.sh 

在这里插入图片描述

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

shell脚本——while循环语句(包含应用案例)

shell脚本 案例

shell脚本——学习笔记(包含应用案例)

shell编程

Shell脚本(函数,shell中的数组)

Shell脚本(for循环,while循环,break跳出循环,continue结束本次循环)