linux指令碼Shell之九九乘法表

2022-09-05 22:30:22 字數 1138 閱讀 4057

說到9*9乘法表,許多朋友在想這是小學二年級就會的東西,不錯,確實是這樣,那麼在linux下,使用shell列印出99乘法表應該如何編寫指令碼的?

筆者的文件今天就寫下來,有需要的朋友可以參考下

**:

1 [root@localhost ~]#

for((i=1;i<=9;i++))

2 >do

3 > for((j=1;j<=i;j++))

4 >do

5 > echo -n -e "

$j*$i=

"$[j*i]"\t"

6 >done

7 > echo -e "\n"

8 > done

結果:

1*1=1

1*2=2 2*2=4

1*3=3 2*3=6 3*3=9

1*4=4 2*4=8 3*4=12 4*4=16

1*5=5 2*5=10 3*5=15 4*5=20 5*5=25

1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36

1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49

1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64

1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81

是不是看到熟悉的九九乘法表了呢,~_~

上面的指令碼有幾個地方需要注意的 

1. echo -n 的意思是不自動換行,因為在linux shell中 echo到最後乙個字元時會自動換行的,所以echo -n取消了shell的自動換行

2. echo -e "\n" 的意思是把字串中某些字元當成特殊字元處理如:

\t 製表符 \n換行符 \b 刪除前乙個字元  \f 換行但游標仍舊停留在原來的位置   \r 游標移至行首,但不換行

3. $[j*i] 在shell中表示j*i;但是在linux shell中不能直接寫成j*i;必須寫成$[j*i]或者$[$j*$i] 或者 $(( $j * $i ))  最後一種寫法注意空格,否則會報錯的

以上就是今天筆者分享的知識以及應該注意的可能會出錯的地方,歡迎指正和批評。

Linux之shell指令碼

1.shell是系統的使用者介面,提供了使用者與核心進行互動操作的一種介面。它接收使用者輸入的命令並把它送入核心去執行。2.每個linux系統的使用者可以擁有他自己的使用者介面或shell,用以滿足他們自己專門的shell需要。同linux本身一樣,shell也有多種不同的版本 比如bash或sh ...

linux之shell指令碼

shell 是指一種應用程式,這個應用程式提供了乙個介面,使用者通過這個介面訪問作業系統核心的服務,是指令碼中命令的直譯器。1 記錄命令執行的過程和執行邏輯,以便以後重複執行 2 指令碼可以批量處理主機 3 指令碼可以定時處理主機。bin bash 幻數 指令碼執行的直譯器,最優先執行vim自動新增...

shell指令碼 複數 linux之shell指令碼

1 如何向指令碼傳遞引數 script argument 例子 顯示檔名稱指令碼 2 如何在指令碼中使用引數 第乙個引數 1,第二個引數 2 例子 指令碼會複製檔案 arg1 到目標位址 arg2 3 如何計算傳遞進來的引數 4 如何在指令碼中獲取指令碼名稱 05 如何檢查之前的命令是否執行成功 6...