07-shell-99-乘法表
阿新 • • 發佈:2022-04-02
99乘法表
CMD1 && CMD2 第一個CMD1結果為真,第二個CMD2必須運算,才能得到最後的結果 第一個CMD1結果為假,總的結果必定為0,因此第二個CMD2不需要執行大於 -gt (greater than) 小於 -lt (less than) 大於等於 -ge (greater than or equal) 小於等於 -le (less than or equal) 不相等 -ne (not equal)
echo -n 不換行
eche -e 啟用轉義字元。使用-e選項時,若字串中出現以下字元,則特別加以處理,而不會將它當成一般文字輸出:\t 插入tab
方法1
顏色多樣
root@ubuntu2004:~# cat 99.sh #!/bin/bash #color=$[RANDOM%7+31] for i in `seq 9` do for j in `seq 9` do [ $i -ge $j ] && echo -ne "\E[1;$[RANDOM%7+31]m$[i]X$[j]=$[i*j]\t\E[0m" done echo "" done
\E[1;xm \E[0m 隨機顏色
root@ubuntu2004:~# cat 99.sh #!/bin/bash color=$[RANDOM%7+31] for i in `seq 9` do for j in `seq 9` do [ $i -ge $j ] && echo -ne "\E[1;${color}m$[i]X$[j]=$[i*j]\t\E[0m" done echo "" done
root@ubuntu2004:~/scripc# cat 29.sh OK #!/bin/bash for i in `seq 9` do for j in `seq 9` do [ $i -ge $j ] && echo -en "${i}x${j}=$[i*j]\t" #判斷i大於等於j的留下 done echo "" #補個換行 done
root@ubuntu2004:~/scripc# cat 39.sh #!/bin/bash for i in `seq 9` do for j in `seq 9` do echo -en "${i}x${j}=$[i*j]\t" #"" 引起來作為整體才會對齊有空格 done echo "" done root@ubuntu2004:~/scripc# bash 39.sh # i=1,j=1..9;i=2,j=1..9;i+1之後補個換行 1x1=1 1x2=2 1x3=3 1x4=4 1x5=5 1x6=6 1x7=7 1x8=8 1x9=9 2x1=2 2x2=4 2x3=6 3x4=12 3x5=15 3x6=18 3x7=21 3x8=24 3x9=27 4x1=4 4x2=8 4x3=12 4x4=16 4x5=20 4x6=24 4x7=28 4x8=32 4x9=36 5x1=5 5x2=10 5x3=15 5x4=20 5x5=25 5x6=30 5x7=35 5x8=40 5x9=45 6x1=6 6x2=12 6x3=18 6x4=24 6x5=30 6x6=36 6x7=42 6x8=48 6x9=54 7x1=7 7x2=14 7x3=21 7x4=28 7x5=35 7x6=42 7x7=49 7x8=56 7x9=63 8x1=8 8x2=16 8x3=24 8x4=32 8x5=40 8x6=48 8x7=56 8x8=64 8x9=72 9x1=9 9x2=18 9x3=27 9x4=36 9x5=45 9x6=54 9x7=63 9x8=72 9x9=81
2,方法二,參考
root@ubuntu2004:~/scripc# cat 29.sh #!/bin/bash for i in `seq 9` do for j in `seq 9` do [ $i -ge $j ] && echo -en "${i}x${j}=`echo $(($i*$j))`\t" done echo "" done
root@ubuntu2004:~/scripc# bash 29.sh 1x1=1 2x1=2 2x2=4 3x1=3 3x2=6 3x3=9 4x1=4 4x2=8 4x3=12 4x4=16 5x1=5 5x2=10 5x3=15 5x4=20 5x5=25 6x1=6 6x2=12 6x3=18 6x4=24 6x5=30 6x6=36 7x1=7 7x2=14 7x3=21 7x4=28 7x5=35 7x6=42 7x7=49 8x1=8 8x2=16 8x3=24 8x4=32 8x5=40 8x6=48 8x7=56 8x8=64 9x1=9 9x2=18 9x3=27 9x4=36 9x5=45 9x6=54 9x7=63 9x8=72 9x9=81