Linux shell 指令碼中變數的數學計算

2021-06-15 04:20:40 字數 781 閱讀 5336

首先從乙個例子說起:

x=1+1

echo $x

你是不是期待著輸出2啊?讓你失望了,這樣輸出的結果是1+1。

1)首先看第一類方法:宣告變數的型別

我對上述程式做出以下修改:

declare -i x

x=1+1

echo $x

在上述指令碼中我把x宣告為整型數字(integer)型別,這時輸出結果為2

或者你可以這麼寫:

declare -i x

declare -i y

x=1y=2

x=$x+$y

echo $x

輸出結果為3,假如我沒有宣告 x, y 的型別為整型數字,那麼輸出結果是1+2 2)

a)使用let命令:(注意的是let僅支援整數運算)

let 'x=1+1'

echo $x

這時輸出結果為2

b)使用$[ ]

x=1

y=2x=$[ x+y]

echo $x

輸出結果為:3

這裡要注意的是注意: 

c)使用$(( ))

x=1

y=2x=$(( x+y))

echo $x

輸出結果是3

Linux shell指令碼 變數

一 簡介 shell是一種指令碼語言,那麼,就必須有直譯器來執行這些指令碼。unix linux上常見的shell指令碼直譯器有bash sh csh ksh等,習慣上把它們稱作一種shell。我們常說有多少種shell,其實說的是shell指令碼直譯器。二 基本介紹 1 學語言的經典 hello ...

Linux shell指令碼中父子程序與變數的分析

問題 乙個 test.sh 裡面這麼寫 bin bash read test echo test exit 0 儲存,chmod x test.sh test.sh 譬如輸入 ok,指令碼就輸出 ok 然後在 shell 下 直接 echo test 卻沒有輸出 ok.這是怎麼回事?這個自定義的變數...

Linux shell指令碼 (二)shell變數

shell支援自定義變數。定義變數時,變數名不加美元符號 如 variablename value 注意,變數名和等號之間不能有空格,這可能和你熟悉的所有程式語言都不一樣。同時,變數名的命名須遵循如下規則 變數定義舉例 myname wenong mynum 100 myname wenong ec...