首先從乙個例子說起:
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...