shell脚本编程实现9*9乘法表

脚本内容


#!/bin/bash  

  

for i in "1" "2" "3" "4" "5" "6" "7" "8" "9"  

do  

        for j in "1" "2" "3" "4" "5" "6" "7" "8" "9"  

                do  

                        if [ ${j} -lt  ${i} ]  

                        then  

                                        k=$((i * j))  

                                        echo -n ${i}*${j}=${k}$'\t'  

                        fi  

                        if [ ${j} -eq ${i} ]  

                        then  

                                        k=$((i * j))  

                                        echo   ${i}*${j}=${k}  

                        fi  

                done  

done  

输出结果


[iufo@iufo test]$ bash ./test.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

[iufo@iufo test]$ 

总结下知识点

1、for 循环


          for  v_1  in    [list] 

                   do

                   done


list   如果是“1 2 3”,那么v_1值就是一个数组1 2 3

如果要每次只给v_1赋一个值,那么需要分开写,即”1“ ”2“ ”3“

2、bash中的算术运算


k=$((i *  j))

等号左右不能有空格,没有空格为赋值。

此外算术运算需要使用$(())括起来,表示先进行运算,将结果算出来。运算符加减乘除两边要带着空格。

3、echo命令的使用

echo,输出echo后面的字符。

默认输出后面带有一个换行符。

-n参数取消末尾带的换行符。

-e参数可使转义字符生效。转义符为“\”,常用的转义符有 \\   \t    \n

例如:


echo  -e  1\\t2

echo -ne  1\\n2